int[4][3]={1,2,3,4,5,6,7,8,9,10,11,12},(*prt)[3]=a,*p=a[0];
来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/08/18 08:21:21
int[4][3]={1,2,3,4,5,6,7,8,9,10,11,12},(*prt)[3]=a,*p=a[0]; a[1][2]的表达式是*(*(a+1)+2) 为什么?
其实只需要:a[1][2]的表达式是*(*(a+1)+2) 为什么?
(地址加数字就是往后移几个后的地址)
a指的是这个二维数组名或起始地址
a+1指的是第一行的起始地址
*(a+1)加*后指的是第一行第0列的起始地址(因为还有一整行,不能具体到某个值,所以还是地址)
*(a+1)+2指的是第一行第二列的地址
*(*(a+1)+2) 指的是第一行第二列这个地址上的数,也就是a[1][2]的意思.
(地址加数字就是往后移几个后的地址)
a指的是这个二维数组名或起始地址
a+1指的是第一行的起始地址
*(a+1)加*后指的是第一行第0列的起始地址(因为还有一整行,不能具体到某个值,所以还是地址)
*(a+1)+2指的是第一行第二列的地址
*(*(a+1)+2) 指的是第一行第二列这个地址上的数,也就是a[1][2]的意思.
int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12} ,(*prt)[3]=a,*p=a[0
int[4][3]={1,2,3,4,5,6,7,8,9,10,11,12},(*prt)[3]=a,*p=a[0];
C语言的小语句int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12} ,(*prt)[3]=a
int a[3][3]={{1,2,3},{4,5,6},{7,8,9}}; int **p; p=(int**)a;
int a[ ][3]={1,2,3,4,5,6,7,8,9,10,11,12};int*p=a;求 *(*(a+2)+
有如下程序,int a[10]={1,2,3,4,5,6,7,8,9,10}; int *p=&a[3],b;b=p[5
int a[]={1,2,3,4,5,6,7,8,9},*p; for(p=a,p
#include main(){int a[]={1,2,3,4,5,6,7,8,9,0},*p; p=a; print
C语言 int a[ ]={0,1,2,3,4,5,6,7,8,9},*p=a *p=a 是不是相当于 *(p=a)
{ int a[]={1,2,3,4,5,6}; int*p; p=a; printf("%d\n",*p); prin
c语言的问题 int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12}; int (*p)[
int 原题:若有定义:int a[]={1,2,3,4,5,6,7,8,9,10,11,12},*p[3],m;阅读下