C中数组和指针有太多相似之出,感觉数组好像是一个指针变量.
我是否可以这样理解呢
2维数组又是一个一维指针数组
书中写到2维数组中的&a[i]和a[i]相同
我有些不解 printf("%d",a) a是数组会输出什么
c的数组于指针??
答案:1 悬赏:30 手机版
解决时间 2021-04-23 02:25
- 提问者网友:辞取
- 2021-04-22 11:34
最佳答案
- 五星知识达人网友:胯下狙击手
- 2021-04-22 12:34
你的a数组是int类型的话。。就会输出首行首个元素。。
数组和指针是有点像了。。就是那个数组名本身就是一个地址(该行元素首地址。。是一个常量)。。而指针本身也是代表地址。。指针即地址!。。
指针变量保存的是地址。。数组保存的是实实在在的内容啊。。
二维数组就是拿了一个一维数组的每个数组元素存放了一个一维数组了。。(事实上。。内存中也是这么做的。。排成一条直线的存放。。)。。
说说&a[i]和a[i]哈。。
首先要声明的是。。这两个内容相同。。但意义不同。。
a[i]是一个地址常量。。保存的是a[i][0]元素的地址。。(这个地址+1得到的是a[i][1]的地址。。)。。
&a[i]也是一个地址。。但存的是第i+1行的首地址。。(这个地址+1得到的是i+2行的地址。。)
嗯。。如果晕了。。也很正常。。多读几遍书就好了。。首选谭浩强的《C程序设计》我当时就是这样的。。就这样吧。。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯