Address of each element in an array


Levels of difficulty: / perform operation:

As we know Array elements occupy consecutive memory locations.

Program

#include <stdio.h>

main()
{
    int a[5];
    int i;
    for(i = 0;i<5;i++)
    {
        a[i]=i;
    }

    for(i = 0;i<5;i++)
    {
        printf("value in array %d\n",a[i]);
    }

    for(i = 0;i<5;i++)
    {
        printf("value in array %d and address is %16lu\n",a[i],&a[i]);
    }
}

Result

      value in array 0
      value in array 1
      value in array 2
      value in array 3
      value in array 4
      value in array 0 and address is           631656
      value in array 1 and address is           631660
      value in array 2 and address is           631664
      value in array 3 and address is           631668
      value in array 4 and address is           631672