作者hankhank5345 (MPower)
看板C_and_CPP
标题[问题] C++ 问题
时间Fri Feb 27 01:29:05 2009
请各位高手帮我看一下为什麽跑不出来!!!谢
Write a function with the following prototype:
bool compute(int one, int two, int & sum, int & product, double & quotient);
sum will be one + two, product will be one * two, and
quotient will be one/two provided that two is not 0.
If the quotient can be computed,( i.e. two is not 0 ) return true.
If the quotient cannot be computed ( i.e. two has a value of 0 ), return false.
Write a driver program to test both cases.
#include <iostream>
using namespace std;
bool compute(int one, int two, int& sum, int& product, double& quotient);
int main()
{
int a,b,c,d,e;
cout << "please enter two number: ";
cin >> a >> b;
compute(a,b,c,d,e);
cout << "Results: "
<< c << ' '
<< d << ' '
<< e << endl;
return 0;
}
bool compute(int one, int two, int& sum, int& product, double& quotient)
{
sum = one + two;
product = one * two;
quotient = one/two;
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 71.199.79.106
1F:推 legendmtg:compute的return value 02/27 01:50
2F:→ hankhank5345:什麽意思不太懂~~谢谢 02/27 01:53
3F:推 hylkevin:要检查two不是0来决定回传值啊 你没return 02/27 02:13
4F:推 VictorTom:本来小弟也以为是compute没return所以根本build不过. 02/27 09:56
5F:→ VictorTom:拿DevCpp build了一遍, 才发现是compute最後一个参数有 02/27 09:56
6F:→ VictorTom:问题; main里最後一个参数传了一个int进去, compute函数 02/27 09:57
7F:→ VictorTom:却要收一个double参考, compute是这边没有过. 02/27 09:57
8F:→ VictorTom:pass by value时可能有隐式转型所以这样传没什麽问题.y 02/27 09:58
9F:→ VictorTom:pass by ref的时候这样隐式转型(应该变暂存const吧)不 02/27 09:58
10F:→ VictorTom:会过. 02/27 09:58
11F:→ VictorTom:最後, "不会过", 是跑出来结果错, 还是compile不会过. 02/27 09:59
12F:→ VictorTom:建议写清楚点, 有时候build error看一下就知道错在哪了. 02/27 09:59
13F:推 VictorTom:修正一下, "不会过" -> "跑不出来". 02/27 10:02
14F:→ hankhank5345:谢谢~已经可以跑了,谢谢指导 02/27 11:29
15F:推 hylkevin:C++98应该有规定除了main以外的function有return value 02/27 16:15
16F:→ hylkevin:都必须return 02/27 16:16
17F:推 VictorTom:果然还是reutrn, 把程式写完整才对....Orz 02/27 17:14