1.

Differentiate between pointers and arrays? Write a C program to display the contents of an array using a pointer arithmetic. 

Answer»

Pointer and arrays: 

Pointers and arrays are very closely linked in C. Consider the following statements: 

int a[10], x;

int *ptr; /* ptr is a pointer variable*/

ptr = &a[0]; /* ptr points to address of a[0] */

x = *ptr;

/* x = contents of ptr (a[0] in this case) */

A pointer is a variable so we can do 

ptr = a and ptr++ ; 

while an array is not a variable so statements

a = pa and a++ are illegal.

A C program to display the contents of an array using a pointer arithmetic is listed below:

//display the contents of an array using pointer

#include < stdio. h >

void main() 

int *p,sum,i;

static int x[5] = {5,9,6,3,7};

i=0;

p=x;

sum=0;

clrscr();

printf("\nElement Value Address\n\n");

while(i<5)

{

printf(" x[%d] %d %u\n",i,*p,p); 

sum+=*p;

i++;

*p++;

}

printf("\n Sum = %d\n",sum); 

printf("\n &x[0] = %u\n",&x[0]); 

printf("\n p = %u\n",p);  

getch();

}



Discussion

No Comment Found

Related InterviewSolutions