
执行以下程序段,输出的结果为( )
执行以下程序段,输出的结果为()main(){inta[2][3]={{3,2,7},{4,8,6}};int*p,m;p=&a[0][0];m=(*p)*(*(p+2)...
执行以下程序段,输出的结果为( )
main()
{ int a[2][3]={{3,2,7},{4,8,6}};
int *p,m;
p=&a[0][0];
m=(*p)*(*(p+2))*(*(p+4)); /*这里是怎么计算的?大虾能帮忙解释吗?*/
printf(“m=%d”,m);}
答案是多少呢? 展开
main()
{ int a[2][3]={{3,2,7},{4,8,6}};
int *p,m;
p=&a[0][0];
m=(*p)*(*(p+2))*(*(p+4)); /*这里是怎么计算的?大虾能帮忙解释吗?*/
printf(“m=%d”,m);}
答案是多少呢? 展开
展开全部
84
m=(*p)*(*(p+2))*(*(p+4));
首先(*p)指p指针指向内存位置的int型变量的值,即a[0][0],因此(*p)=3
然后看(*(p+2))指的是p所指位置之后第二个元素,即a[0][2],因此(*(p+2))=7
最后(*(p+4))=a[1][0]=4,因此m=3*7*4=84
m=(*p)*(*(p+2))*(*(p+4));
首先(*p)指p指针指向内存位置的int型变量的值,即a[0][0],因此(*p)=3
然后看(*(p+2))指的是p所指位置之后第二个元素,即a[0][2],因此(*(p+2))=7
最后(*(p+4))=a[1][0]=4,因此m=3*7*4=84
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询