Pointers in C
Last Updated Nov 20, 2015, 07:00:14 PM
The Wikipedia gives a clear sense about pointers as "a pointer is a programming object whose value refers to or points to another value stored elsewhere in the computer memory using its address"
If you notice the above pointers image you will notice some interesting facts about variable; There is a normal integer variable with value 34 and it has an address location of 1005 in the memory. As we know, this is normal behavior of how memory allocation is used, right?. So what pointers do in this scenario?. Well, in the above, there is a pointer variable which actually stored the address location of the normal variable value .ir.e 34. Also please note that pointer variable do have its own address location as well.
As we already know, variable declaration, pointer declaration may looks similar, however there is one differece that seperates normal variable and a pointer variable
pointers must be declared using astrisk( * ).
In the above declaration if you notice, we have declared pointer as integer, just like variables we can also delcare pointers of any data type such as
int, char, float, double etc
Pointer-name specifies the name of the pointer just like a variable name, but it must start with an astrisk( * ).
ExampleTry It Now
In the above example, the variable is
normal_variable, and the pointer variable is
the normal_variable has some memory location which can be stored as
so that location is stored in the pointer as
ptr = &normal_variable
So Why Pointers are so Important?
There are significant advanctages of using pointers in c programming. Let us learn some of them
- Pointers are very helpful to improve the performance for complex and repeatative operatiions
- Pointers can also hold the address location of entry points such subroutines
- Pointers allow to access the memory location of both protected and unprotected access to memory address
As we already know, pointers to have a memory location, obtaining the specific value stored in that memory location is called as dereferencing
Char Pointer ExampleTry It Now
Floating Pointer ExampleTry It Now
Pointers with String ExampleTry It Now
Other Pointer Topics you might want to learn
Pointers to Arrays in C
Pointers to Functions in C