-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcube_function.cpp
More file actions
30 lines (23 loc) · 913 Bytes
/
Copy pathcube_function.cpp
File metadata and controls
30 lines (23 loc) · 913 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Creating a number's cube function using invocation by value or by reference.
#include <iostream>
using namespace std;
int cube_value ( int );
int cube_reference ( int *, int * );
int main (){
int number = 5, number2 = 10, number3 = 100;
cout << "The number is : " << number << endl;
cout << "Invocation by value ( 5^3 ): ";
number = cube_value ( number );
cout << number << endl;
cout << "Invocation by reference ( 10^3 & 100^3 ): ";
cube_reference ( &number2, &number3 );
cout << number2 << " " << number3 << endl;
return 0;
}
int cube_value ( int x ){ // call by value
return x * x * x; // local "x" variable's cube
}
int cube_reference ( int *x_ptr, int *y_ptr){ // call by reference
*x_ptr = (*x_ptr) * (*x_ptr) * (*x_ptr); // "number2" variable's cube in main function
*y_ptr = (*y_ptr) * (*y_ptr) * (*y_ptr);
}