gpt4 book ai didi

C++:我正在解决一个问题,突然我注意到编译的代码没有返回语句

转载 作者:行者123 更新时间:2023-11-30 00:42:40 26 4
gpt4 key购买 nike

Visual Studios 甚至 Codechef 都在编译缺少返回语句的代码。

我正在解决一些竞争性编程问题,并注意到我的程序在编译时函数中没有 return 语句。我写了一个简单的函数,没有提到任何 return 语句,程序正在被完美地编译。

这是代码

#include <iostream>
using namespace std;

int add(int x, int y)
{
int c = x + y;
}

int main() {

int a = add(1, 2);
cout << a;
return 0;
}

我期待一个我没有得到的错误,这让我想知道我的代码有什么问题(当然不是上面那个)。在上面的程序中,我得到了输出 0,我不明白这是怎么回事?

最佳答案

一个没有像预期的那样返回任何东西的函数有undefined behavior .

Flowing off the end of a value-returning function (except main) without a return statement is undefined behavior.

这就是为什么你不应该忽略警告。 /Wall/w4 是您在 visual studio 上需要的标志。

关于C++:我正在解决一个问题,突然我注意到编译的代码没有返回语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58737251/

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