gpt4 book ai didi

c++ - 当我写入超出数组末尾时,为什么不会出现段错误?

转载 作者:行者123 更新时间:2023-11-30 16:36:59 24 4
gpt4 key购买 nike

为什么我编译时没有给出错误?

#include <iostream>
using namespace std;

int main()
{
int *a = new int[2];
// int a[2]; // even this is not giving error
a[0] = 0;
a[1] = 1;
a[2] = 2;
a[3] = 3;
a[100] = 4;
int b;

return 0;
}

有人可以解释为什么会发生这种情况吗?提前致谢。)

最佳答案

因为未定义的行为==任何事情都可能发生。你很不幸它没有崩溃,这种行为可能隐藏错误。

关于c++ - 当我写入超出数组末尾时,为什么不会出现段错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48198145/

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