gpt4 book ai didi

代码块给出不正确的结果作为输出

转载 作者:太空宇宙 更新时间:2023-11-04 08:02:38 24 4
gpt4 key购买 nike

我的代码:

#include <stdio.h>
int main(){
int a = 5;
int b,c;
if (a==4){
b = 6;
c = 7;
}
printf("%d %d\n",b,c);
}

我知道结果应该是 0 0,但是代码块给出的答案是 50 8。我试过在线编译器,得到的答案是 0 0。代码块有什么问题?我正在使用最新版本的代码块和 gcc c 编译器。我怎样才能避免将来出现此类问题?

最佳答案

bc 变量的值是垃圾,因为 if() 条件变为 false。这意味着,它是未定义的行为。

C11 section 6.7.9 初始化:

第 10 段:

If an object that has automatic storage duration is not initialized explicitly, its value is indeterminate.

关于代码块给出不正确的结果作为输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45031248/

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