increment and decrement a pointer - Coding is Funny

increment and decrement a pointer

Accessing array elements(Traversing array) by incrementing a Pointer

Name of the array refers to the base address of the array.
Here we have a tutorial to understand How Pointer arithmetic works?
Below is a program to access elements of an array using pointer increment.
#include <stdio.h>

const int MAX = 3;  // Global declaration
int main()
{
 printf("\n\n\t\tStudytonight - Best place to learn\n\n\n");
 int var[] = {100, 200, 300};
    int i, *ptr;

    /* 
        storing address of the first element 
        of the array in pointer variable
    */
    ptr = var;

    for(i = 0; i < MAX; i++)
    {
        printf("\n\n\nAddress of var[%d] = %x ", i, ptr);
        printf("\nValue of var[%d] = %d ", i, *ptr);

       // move to the next location
        ptr++;
    }
 printf("\n\n\t\t\tCoding is Fun !\n\n\n");
    return 0;
}

Output:


Traversing array elements by decrementing a Pointer

Below is a program to access elements of an array using pointer decrement.
#include <stdio.h>

const int MAX = 3;  // Global declaration
int main()
{
 printf("\n\n\t\tStudytonight - Best place to learn\n\n\n");
 int var[] = {100, 200, 300};
    int i, *ptr;

    /* 
        storing address of the last element 
        of the array in pointer variable
    */
    ptr = &var[MAX-1];

 for(i = MAX; i > 0; i--)
    {
     printf("\n\n\nAddress of var[%d] = %x ", i, ptr);
        printf("\nValue of var[%d] = %d ", i, *ptr);

  // move to the previous location
        ptr--;
 }
 printf("\n\n\t\t\tCoding is Fun !\n\n\n");
    return 0;
}

Output:


  • Share: