gpt4 book ai didi

c - 请解释以下代码的输出

转载 作者:行者123 更新时间:2023-11-30 20:01:30 25 4
gpt4 key购买 nike

有人可以解释一下以下代码的行为吗?为什么返回类型为 int 的函数 message() 返回 printf() 函数打印的字符数,而没有任何 return 语句?

#include <stdio.h>

int message();

int main() {
int c;
printf("C before:%d\n",c);
c=message();
printf("C after:%d\n",c);
return 0;
}

int message(){
printf("From the message");
}

最佳答案

这是由未定义的行为引起的。
这是 similar question ,我无法用 second answer 来形容它。是:

That's simply undefined behaviour; if you don't populate the return area [...], it'll have the value last set up through some side-effect in your function.

...这是 printf 返回的值。

关于c - 请解释以下代码的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31478166/

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