void main( ){ int a[2][3]={{1, 2, 3},{4, 5, 6}};

2025-02-02 23:57:59
推荐回答(2个)
回答1:

D) 6

好吧其实是运行结果。。。
(*p)[3] 其实就跟a[2][3]差不多,不同的是a[2][3]里{1, 2, 3}的地址(其实就是1的地址)是存在a[0]里而(*p)[3]里是存在*p这个地址里,*(p+1)对应的是a[1]这样子。。。
所以(*p)[3]=a其实就是把二维数组赋予(*p)[3],方便以后用p乱指。。。
m=(*(*p)) *(*(*(p+1)+2));
这个要注意的是中间的*是乘号。。。
前面的(*(*p))就是取*p的值就是{1, 2, 3}里的1啊,而*(p+1)就是a[1]里{4, 5, 6}中4的地址,再+2就是6的地址了(一维数组地址连续),然后取值就是6了
所以m=1*6=6,选D

回答2:

D dddddddddddddddddddddddd