Course Content
C++ Pointers and References
C++ Pointers and References
Pointers Use Cases
When you pass a variable to a function, you're essentially passing its value. This means the function receives a copy of the data. Any modifications made inside the function DO NOT affect the original variable.
main
#include <iostream> void increment(int num) { num++; } int main() { int num = 5; increment(num); std::cout << "Original value: " << num << std::endl; }
We can use pointers to enable a function to alter the original variable. This involves passing a memory address as an argument instead of the actual value.
main
#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = # increment(p_num); std::cout << "Original value: " << num << std::endl; }
Note
You can bypass the creation of a pointer to a variable and instead directly use the address-of operator when passing a variable.
Task
- Create a function that swaps values of two variables.
- Call this function.
- Output the values of variables after the swap.
Thanks for your feedback!
Pointers Use Cases
When you pass a variable to a function, you're essentially passing its value. This means the function receives a copy of the data. Any modifications made inside the function DO NOT affect the original variable.
main
#include <iostream> void increment(int num) { num++; } int main() { int num = 5; increment(num); std::cout << "Original value: " << num << std::endl; }
We can use pointers to enable a function to alter the original variable. This involves passing a memory address as an argument instead of the actual value.
main
#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = # increment(p_num); std::cout << "Original value: " << num << std::endl; }
Note
You can bypass the creation of a pointer to a variable and instead directly use the address-of operator when passing a variable.
Task
- Create a function that swaps values of two variables.
- Call this function.
- Output the values of variables after the swap.
Thanks for your feedback!
Pointers Use Cases
When you pass a variable to a function, you're essentially passing its value. This means the function receives a copy of the data. Any modifications made inside the function DO NOT affect the original variable.
main
#include <iostream> void increment(int num) { num++; } int main() { int num = 5; increment(num); std::cout << "Original value: " << num << std::endl; }
We can use pointers to enable a function to alter the original variable. This involves passing a memory address as an argument instead of the actual value.
main
#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = # increment(p_num); std::cout << "Original value: " << num << std::endl; }
Note
You can bypass the creation of a pointer to a variable and instead directly use the address-of operator when passing a variable.
Task
- Create a function that swaps values of two variables.
- Call this function.
- Output the values of variables after the swap.
Thanks for your feedback!
When you pass a variable to a function, you're essentially passing its value. This means the function receives a copy of the data. Any modifications made inside the function DO NOT affect the original variable.
main
#include <iostream> void increment(int num) { num++; } int main() { int num = 5; increment(num); std::cout << "Original value: " << num << std::endl; }
We can use pointers to enable a function to alter the original variable. This involves passing a memory address as an argument instead of the actual value.
main
#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = # increment(p_num); std::cout << "Original value: " << num << std::endl; }
Note
You can bypass the creation of a pointer to a variable and instead directly use the address-of operator when passing a variable.
Task
- Create a function that swaps values of two variables.
- Call this function.
- Output the values of variables after the swap.