这个程序是要输出任一行任一列元素的值。
#include <stdio.h>
main()
{
int a[3][4] = {1,3,5,7,9,11,13,15,17,19,21,23};
int i,j;
int * p;
p = a;
scanf("%d%d",&i,&j);
printf("%d\n",* (* (p + i) + j));
}
p=a后p不就是0行首地址吗?p + i是第i行首地址,*(p+i)是第i行0列的地址,*(p+i)+j是第i行j列的地址,* (* (p + i) + j)就是第i行j列元素的值。 这个到底哪错了?想了半天没想明白。