【发布时间】:2020-06-13 04:17:15
【问题描述】:
使用的编译器-:代码块
没有返回“c”,变量“d”如何获得它的值?
#include<iostream>
using namespace std;
int add(int x,int y) {
int c;
c=x+y;
}
int main() {
int a,b;
cin>>a>>b;
int d=add(a,b);
cout<<d;
}
【问题讨论】:
-
不从应该返回值的函数返回值是未定义的行为。没有什么可以从未定义的行为中推断出来——任何事情都可能发生。
-
还是不明白。
-
@Noobcoder 未定义的行为意味着任何事情都可能发生。不知道怎么说更简单。
-
旁注:Code::Blocks 是一个IDE,通常位于 g++ 编译器之上。
-
Please see this。输出怎么了?明白了吗?赋值,没有输出。更改编译器设置,可能会输出其他内容。同样,这一切都是因为您的程序选择调用未定义的行为。
标签: c++ function parameterized