我一直在学习C ++,并尝试制作一个简单的函数来返回房间的区域。 return语句不输出值,但是使用cout我可以看到结果。我在这里错过了什么吗?
#include <iostream>
using namespace std;
int Area(int x, int y);
int main()
{
int len;
int wid;
int area;
cout << "Hello, enter the length and width of your room." << endl;
cin >> len >> wid;
cout << "The area of your room is: ";
Area(len, wid);
return 0;
}
int Area(int len, int wid)
{
int answer = ( len * wid );
return answer;
}
答案 0 :(得分:8)
std::cout
用于在屏幕上打印数据。仅函数返回值,因此Area
函数将返回要在std::ostream::operator<<
函数中传递的值以进行打印。你需要写:
std::cout << Area(len, wid) << "\n";
答案 1 :(得分:7)
return
不打印任何内容,您不应该期望它。它只是返回函数中的值。然后,您可以使用该值执行任何操作,包括打印或将其分配给变量:
// Does not print:
Area(len, wid);
// Does print:
int result = Area(len, wid);
std::cout << result << "\n";
// Does print:
std::cout << Area(len, wid) << "\n";
想象一下,如果庞大的代码库中的每个函数突然开始打印其返回值,就会出现混乱......