自学指针访问二维数组

#include "stdio.h"


#include "stdlib.h"


void main()
{
	int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
	for (int i=0;i<3;i++)
	{
		for (int j=0;j<4;j++)
		{
			printf("%4d,%X",a[i][j],&a[i][j]);
	
		}
		printf("\n");
	}

	printf("%p,%p,%p\n",a,&a,*a);
	printf("%d,%d,%d\n",sizeof(*a),sizeof(*&a),sizeof(**a)); // 16 48 4
	printf("%d,%d,%d\n\n",**a,*(*(a+1)),*(*a+1));  // 1 5 2

	printf("%d,%p\n",*(*(a+1)),*(a+1));
	printf("%d,%p\n",*(*a+1),*a+1);
	printf("%d,%p\n",*(*(a+1)+2),*(a+1)+2);
	printf("%d,%p",*(*(a+2)+1),*(a+2)+1); // p=*(a+i)+j  d=*(*(a+i)+j)






	getchar();
}

  

上一篇:typeof所输出的数据类型


下一篇:VS2017更新后无法使用stdlib.h