Friday 9 November 2012

1 D and 2 D array pointers in C

#include<stdio.h>
void main()
{
 int a[3][3]={111,222,333,444,555,666,777,888,999};
 int i,j,*p;
 int (*m)[3][3];  /* Pointer to a 2 Dimensional Array*/
 int (*n)[3];     /* Pointer to a 1 Dimensional Array*/
 p=a;
 m=a;
 n=a;

for(i=0;i<3;i++)
 {
  for(j=0;j<3;j++)
  {
   printf("%d ",*p++);
  }

 }
printf("\n");


for(i=0;i<3;i++)
 {
  for(j=0;j<3;j++)
  {
   printf("%d ",a[i][j]);
  }

 }
printf("\n");


for(i=0;i<3;i++)
 {
  for(j=0;j<3;j++)
  {
   printf("%d ",*(*(*m+i)+j));
   printf("%u \n",m+i);
  }
 }
printf("\n");

for(i=0;i<3;i++)
 {
   for(j=0;j<3;j++)
   {
     printf("%d ",*(*(n+i)+j));
     printf("%u \n",n+i);
   }
 }
}



Click here to download the C Program.





No comments:

Post a Comment