gpt4 book ai didi

c - 段错误没有发生在应该发生的地方

转载 作者:行者123 更新时间:2023-11-30 21:16:14 27 4
gpt4 key购买 nike

我温习了我的 C 编码,并复习了几年前做过的一些旧练习。我遇到了一种情况,我几乎 100% 确定它应该给出段错误,但程序运行顺利并正确终止。为什么会发生这种情况?

#include <stdio.h>

int main(void){
int vals[6] = {0,0,0,0,0,0};

vals[8]++; //This should not be ok!!?

printf("Done");
return 0;
}

最佳答案

vals[8] 的行为未定义

它相当于*(vals + 8),它取消引用数组边界之外的内存。

“段错误”是可能发生的众多情况之一。编译器也可能吃掉你的猫。

关于c - 段错误没有发生在应该发生的地方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35432416/

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