gpt4 book ai didi

c++ - 指向数组的指针

转载 作者:行者123 更新时间:2023-11-28 00:14:56 25 4
gpt4 key购买 nike

最近想通过指点加强自己的技能,遇到了如下问题:

我有以下代码,但遇到运行时错误。我尝试查找一些关于遍历表示数组的指针的内容,但找不到任何内容。

谁能帮我找出问题所在?

#include <bits/stdc++.h>
using namespace std;
int main()
{
int * arr;
arr[0]=1;
arr[1]=2;
for (int g=0; g<2; g++) cout << arr[g] << '\n';
}

最佳答案

您实际上没有为数组声明任何存储,arr 实际上也没有指向数组的第一个元素(取消引用是未定义的行为)。


你错过了这样的东西:

int solve[2];
int * arr = solve;

int solve[2];
int * arr = &solve[0];

这两种方式都会将范围内正确分配的存储地址分配给 arr,并取消引用它,这是已定义的行为。

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

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