//输出二维数组任一行任一列元素的值
#include <stdio.h>
int main()
{
int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
int (*p)[4],i,j;//注意是(*p)[4],不是*p[4]; p是指向一维数组的指针,
//只能指向包含4个整数的一维数组,不能指向一维数组中的某一元素
p=a;//p是指向二维数组的零行
printf("please iuput row and colunm:\n");
scanf("%d%d",&i,&j);
printf("a[%d][%d]=%d",i,j,*(*(p+i)+j));//*(p[i]+j)//a[i][j]
printf("\n");
return 0;
}
#include <stdio.h>
int main()
{ int a[4]={1,3,5,7};
int (*p)[4];
p=&a;//这里不能写成p=a;它指向a[0]; p=&a,p指向一维数组(行 )
printf("%d\n",(*p)[3]);//(*p)[3]是p所指向的行中序号为3的元素
return 0;
}