若有定义:int a[3][4];,不能表示数组元素a[1][1]的是
答案:6 悬赏:0 手机版
解决时间 2021-01-29 12:33
- 提问者网友:愿为果
- 2021-01-29 07:10
若有定义:int a[3][4];,不能表示数组元素a[1][1]的是
最佳答案
- 五星知识达人网友:冷風如刀
- 2021-01-29 08:18
D
我的理解:A:a[1]第二行首地址+1地址取值a[1][1];
B:a[1][1]取地址再取值;[]优先级高没问题;
C:*(a+1)与a[1]意思一致,都是指取a的地址加上一个偏移量再取地址中的值,a的偏移量步距sizeof((*a)[4])
D:表示第六行首地址,地址越界
要是有帮助的话,就散点分吧
我的理解:A:a[1]第二行首地址+1地址取值a[1][1];
B:a[1][1]取地址再取值;[]优先级高没问题;
C:*(a+1)与a[1]意思一致,都是指取a的地址加上一个偏移量再取地址中的值,a的偏移量步距sizeof((*a)[4])
D:表示第六行首地址,地址越界
要是有帮助的话,就散点分吧
全部回答
- 1楼网友:青灯有味
- 2021-01-29 11:31
答案是C 第一二个不用解释吧~~第四个答案~~要清楚二维数组内存的分配~~其实有点类似余下:
a[0][0],a[0][1],a[0][2]..,a[1][0]...a[3][4]..其实是连续的,,,所以a[5],,就是在a 首地址下移动了 5个int字长的内存空间,,正确到a[1][1],,至于C错误的表示方式~~~
a[0][0],a[0][1],a[0][2]..,a[1][0]...a[3][4]..其实是连续的,,,所以a[5],,就是在a 首地址下移动了 5个int字长的内存空间,,正确到a[1][1],,至于C错误的表示方式~~~
- 2楼网友:我住北渡口
- 2021-01-29 11:14
d
- 3楼网友:末日狂欢
- 2021-01-29 10:30
c
- 4楼网友:毛毛
- 2021-01-29 09:36
不能
- 5楼网友:思契十里
- 2021-01-29 08:32
C
这个没啥可解析的。看过书就知道了。。。就这几种表示方法
这个没啥可解析的。看过书就知道了。。。就这几种表示方法
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯