gpt4 book ai didi

c++ - 使用数组的指针运算

转载 作者:行者123 更新时间:2023-11-30 05:07:57 25 4
gpt4 key购买 nike

我的问题是,如果您打印出结果 *(ary + i),我知道这是另一种表示 ary[i] 值的方式,那么以下输出是十六进制/垃圾数据还是该特定索引根据 *ary + i 的计算结果分配一个新值?整个指针的东西仍然让我失望。

  int ary[] = [7, 5, 3, 1, 2, 4, 6, 8];

for (int i = 0; i < 8; i++)
{
*(ary + i) = *ary + i;
}

最佳答案

ary 衰减到您发布的表达式中的指针。由于它总是产生相同的地址(第一个元素),*ary 将在每次迭代时计算为 7

既然你明白 *(ary + i) 等价于 ary[i],你现在应该知道你的循环体类似于这个:

ary[i] = 7 + i;

关于c++ - 使用数组的指针运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47069266/

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