资源描述:
《c语言-指向多维数组的指针》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
Chapter8善于利用指针 Contents8.6返回指针值的函数8.7指针数组和多重指针8.8动态分配内存和指向它的变量8.5指向函数的指针 通过指针引用二维数组a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};由三个1维数组组成,分别是a[0]a[1]a[2]P246—图8.19,图8.20和表8.2比较好的复习资料。 通过指针引用二维数组165514265516365518465520565522665524765526865528aa+1a+2a[0]a[0]+1a[0]+2a[0]+3a是行指针,a[0],a[1],a[2]是列指针965530106553211655341265536 通过指针引用二维数组165514265516365518465520565522665524765526865528aa+1a+2a[0]a[0]+1a[0]+2a[0]+3a是行指针,a[0],a[1],a[2]是列指针965530106553211655341265536*&行指针列指针 通过指针引用二维数组165514265516365518465520565522665524765526865528aa+1a+2a[0]a[0]+1a[0]+2a[0]+3a[1][2]965530106553211655341265536 通过指针引用二维数组165514265516365518465520565522665524765526865528aa+1a+2a[0]a[0]+1a[0]+2a[0]+3a[1][2]a+1965530106553211655341265536 通过指针引用二维数组565522665524765526865528a+1a+2a[1]a[1][2]a+1*(a+1)965530106553211655341265536 通过指针引用二维数组565522665524765526865528a+1a+2a[1]+2a[1][2]a+1*(a+1)*(a+1)+2965530106553211655341265536 通过指针引用二维数组565522665524765526865528a+1a+2a[1]+2a[1][2]a+1*(a+1)*(a+1)+2*(*(a+1)+2)965530106553211655341265536 通过指针引用二维数组56552266552410065526865528a+1a+2a[1]+2a[1][2]a+1*(a+1)*(a+1)+2*(*(a+1)+2)=100965530106553211655341265536 例8.11输出二维数组的有关数据voidmain(){inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};printf(“%u,%u ”,a,*a);printf(“%u,%u ”,a[0],*(a+0));printf(“%u,%u ”,&a[0],&a[0][0]);printf(“%u,%u ”,a[1],a+1);printf(“%u,%u ”,&a[1][0],*(a+1)+0);printf(“%u,%u ”,a[2],*(a+2));printf(“%u,%u ”,&a[2],a+2);printf(“%u,%u ”,a[1][0],*(*(a+1)+0));printf(“%u,%u ”,*a[2],*(*(a+2)+0));} 165514265516365518465520565522665524765526865528aa+1a+2a[0]a[0]+1a[0]+2a[0]+3965530106553211655341265536 指向二维数组元素的指针实质,整型指针。例8.12用指向元素的指针变量输出二维数组各元素的值。p=a[0];或p=&a[0][0];p