作者:哥的微笑帅_655 | 来源:互联网 | 2023-05-18 16:22
关于数组名和指针的区别:推荐看这两篇文章:http:blog.chinaunix.netuid-27004869-id-3301282.htmlhttp:blog.csdn.net
关于数组名和指针的区别:
推荐看这两篇文章:http://blog.chinaunix.net/uid-27004869-id-3301282.html
http://blog.csdn.net/sryan/article/details/7457459
示例:
(输出10进制地址)
输出: a 为 2686777
&a 为 2686777
a是数组名,编译器处理时相当于数组首元素的地址
&a是一个指向数组的指针,值为数组的地址,等于数组首元素的地址
输出: *a 为 1
*(*&a) 为 1
*(&a) 为 2686777
*a是对数组首元素取值
*(&a)是对数组取值,取得数组的值,数组的值即数组的地址,等于数组首元素的地址
输出: a+1 为 2686778
&a+1 为 2686780
a+1是一个元素的内存大小,
&a+1增加的是整个数组的内存大小
数组名和数组名的取址