gpt4 book ai didi

c - 安西C :Is an array's name Stored as a pointer variable?

转载 作者:行者123 更新时间:2023-11-30 21:02:10 24 4
gpt4 key购买 nike

假设我定义了一个数组:

int a[5];

还有

a = &a[0];

是数组开头的地址。

我的问题是 a 吗?像指针变量一样存储在内存中的某个位置?如果是这样,当我尝试打印 a 的地址时( &a ),为什么我得到与 a 相同的值?

最佳答案

当你声明一个数组时,唯一预留的存储空间是数组元素本身;没有为指向第一个元素的指针预留存储空间。

当编译器发现数组表达式不是 sizeof& 运算符的操作数,或者不是用于初始化另一个数组的字符串文字时在声明中,它将将该数组表达式转换为指针表达式,并且指针表达式的值将是数组中第一个元素的地址。

关于c - 安西C :Is an array's name Stored as a pointer variable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32277224/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com