gpt4 book ai didi

c - 预测输出

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

void call(int x,int y,int z)
{
printf("%d %d %d",x,y,z);
}
int main()
{
int a=10;
call(a,a++,++a);
return 0;
}

这个程序在不同的编译器上给出不同的输出,当我在 linux 上编译它时,m/c 输出非常奇怪,任何原因。

最佳答案

因为行为未定义。允许编译器在将它们传递给 call() 之前以任意顺序评估 aa++++a >。 (从技术上讲,因为我们已经调用了未定义的行为,所以此时它实际上不需要做任何特别的事情;它可以编写它喜欢的任何代码。)根据它们的评估顺序,结果会有所不同。

关于c - 预测输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4364772/

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