Programming in C Language: Pointers
Define Pointer.
A pointer is a variable that stores a memory address. Like all other variables, it also has a name, has to be declared, and occupies some spaces in the memory.
Why Pointer is called Pointer?
It is called a pointer because it points to a particular location in memory by sorting the address of that location.
Pointer General Syntax of Declaration
data-type * Pointername;
Here, Pointername = Name of pointer variable
Astric * preceding this name informs the compiler that the variable is declared as a pointer.
Data type = Base type of pointer. For example:
int * iptr;
float * fptr;
here iptr is a pointer that should point to a variable of type int.
Pointers are also variables so, the compiler will reserve space for them and they will also have some address. All pointers irrespective of their base type will occupy the same space in memory since all of them contain address only. Generally, 2 bytes are used to store addresses.
Assigning Address to Pointer Variable
When we declare pointer variable age, (it may be pointing anywhere in the memory). Always assign an address before using it in the program.
int * iptr, age 5; //ipr is a pointer contain address of caiable age.
float * iptr, sal = 2000.30;
iptr = & age;
fptr = & sal;
It is also possible to assign values of one pointer to another, provided their base type is the same. If we have an integer pointer P1 then we can assign the value of iptr to it as:
P1 = iptr;
Now, both pointer variable iptr and P1 contain the address of variable age and point to the same variable age.
Pointer Arithmetic
All types of arithmetic operations are not possible with pointers. The only valid operation that can be performed areas:
- Addition of an integer to a pointer and increment operations.
- Subtraction of an integer from a pointer and decrement operation.
- Subtraction of a pointer from another pointer of the same type.
Comments
Post a Comment