✏️ Explanatory Question
Pass by reference passes a pointer to the value. This allows the caller to modify the variable directly.Pass by value gives a copy of the value to the caller. This allows the callee to modify the value without modifying the variable. (In other words, the callee simply can not modify the variable, since it lacks a reference to it.)