黑马程序员技术交流社区
标题:
为什么查看数组元素的地址要加&,而查看数组的就不用?
[打印本页]
作者:
埃林的奶酪
时间:
2015-5-18 18:27
标题:
为什么查看数组元素的地址要加&,而查看数组的就不用?
本帖最后由 埃林的奶酪 于 2015-5-18 18:57 编辑
比如入学视频里老师写的这段:
int main()
{
char cs[5]={'a', 'A', 'D','e','f'};
printf("%p\n",cs);
for (int i = 0 ; i < 5; i++)
{ printf("cs[%d]的地址是:%p\n", i ,
&
cs[ i ]);
}
return 0;
}
第一个printf查看数组cs的地址,直接写cs就可以了;而第二个printf查看数组cs中每个元素的地址,元素前面要加&,为什么呢?不是%p的意思已经是输出地址了吗?
作者:
埃林的奶酪
时间:
2015-5-18 18:50
额,看懂了,原话“数组名的作用,查看元素地址”
数组名就可以查看元素地址了,所以不用加&,而数组元素不行;
当然数组名前面加个&也无妨,只是多此一举。:L
作者:
mony
时间:
2015-5-18 19:15
数组名就是数组的地址指针
作者:
等风继续吹
时间:
2015-5-18 21:31
数组名就是数组的首元素的地址
作者:
李闯
时间:
2015-5-18 21:59
果断 来偷师
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2