看机械工业出版社出版的c语言程序设计(2004年1月第1版)P108中说,定义二维数组a,a代表整个二为数组的首地址,a+i代表第i行的首地址(从0行算),但P112面又有一个程序中有p<a+12,此时a+12代表a[3][4]数组后一位地址,即a+i代表内存中a后第i个地址到底哪中抒发是对的???
下面窄照书上的两条程序:
main()
{int a[3][4]={{1,3,5,7,}{9,11,13,15}{17,19,21,23}},i;
for(i=0;i<3;i++)
printf("%p",a+i);}
main()
{int a[3][4]={{1,3,5,7,}{9,11,13,15}{17,19,21,23}};
int*p:
for(p=a;p<a+12;p++)
printf(%d,*p);}