Pointers
C/C++
Last Update Unknown
Creating Pointers
We can get the memory address of a variable by using the & operator:
A pointer however, is a variable that stores the memory address as its value.
A pointer variable points to a data type (like int or string) of the same type, and is created with the * operator. The address of the variable you're working with is assigned to the pointer:
Create a pointer variable with the name ptr, that points to a string variable, by using the asterisk sign * (string* ptr). Note that the type of the pointer has to match the type of the variable you're working with.
Use the & operator to store the memory address of the variable called food, and assign it to the pointer.
Now, ptr holds the value of food's memory address.
Declaring a pointer variable
There are three ways to declare pointer variables, but the first way is preferred:
Get Memory Address and Value
We can also use the pointer to get the value of the variable, by using the * operator (the dereference operator):
Note that the * sign can be confusing here, as it does two different things in our code:
- When used in declaration (string* ptr), it creates a pointer variable.
- When not used in declaration, it act as a dereference operator.
Modify the Pointer Value
You can also change the pointer's value. But note that this will also change the value of the original variable: