Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Pointers Use Cases | Pointers Fundamentals
C++ Pointers and References

Swipe to show menu

book
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.

cpp

main

copy
12345678910
#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.

cpp

main

copy
123456789101112
#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = &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

Swipe to start coding

  1. Create a function that swaps values of two variables.
  2. Call this function.
  3. Output the values of variables after the swap.

Solution

cpp

solution

Switch to desktopSwitch to desktop for real-world practiceContinue from where you are using one of the options below
Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 1. ChapterΒ 4
We're sorry to hear that something went wrong. What happened?

Ask AI

expand
ChatGPT

Ask anything or try one of the suggested questions to begin our chat

book
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.

cpp

main

copy
12345678910
#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.

cpp

main

copy
123456789101112
#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = &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

Swipe to start coding

  1. Create a function that swaps values of two variables.
  2. Call this function.
  3. Output the values of variables after the swap.

Solution

cpp

solution

Switch to desktopSwitch to desktop for real-world practiceContinue from where you are using one of the options below
Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 1. ChapterΒ 4
Switch to desktopSwitch to desktop for real-world practiceContinue from where you are using one of the options below
We're sorry to hear that something went wrong. What happened?
some-alt