为了账号安全,请及时绑定邮箱和手机立即绑定

用cin输入为什么不能正常显示

用cin输入为什么不能正常显示

C++
慕粉18256005962 2016-12-19 13:43:02
int main(void){ int d2 = 0; int r = 0;  cin >> d1;  cin >> d2;    // 使用try...catch...捕获异常 try    {     r=division(4,0); cout<<"The result of x/y is : "<<r<<endl;    }    catch(int &e)    {        cout<<e<<endl;    } return 0;}
查看完整描述

2 回答

?
qq__5690

TA贡献2条经验 获得超0个赞

没有定义d1

查看完整回答
反对 回复 2016-12-20
  • 慕粉18256005962
    慕粉18256005962
    #include <iostream> #include <string> #include <stdlib.h> using namespace std; /** * 定义函数division * 参数整型dividend、整型divisor */ int division(int dividend, int divisor) { if(0 == divisor) { // 抛出异常,字符串“除数不能为0” throw string("除数不能为0"); } else { return dividend / divisor; } } int main(void) { int d1 = 0; int d2 = 0; int r = 0; cin >> d1; cin >> d2; // 使用try...catch...捕获异常 try { division(d1,d2); } catch(string &e) { cout<<e<<endl; } return 0; } d1不小心删除了 这个编译通过了 可是在2010版编译器上输入数字按回车就退出了
?
东方既白233

TA贡献16条经验 获得超9个赞

你的d1没有定义。

查看完整回答
反对 回复 2016-12-20
  • 慕粉18256005962
    慕粉18256005962
    #include <iostream> #include <string> #include <stdlib.h> using namespace std; /** * 定义函数division * 参数整型dividend、整型divisor */ int division(int dividend, int divisor) { if(0 == divisor) { // 抛出异常,字符串“除数不能为0” throw string("除数不能为0"); } else { return dividend / divisor; } } int main(void) { int d1 = 0; int d2 = 0; int r = 0; cin >> d1; cin >> d2; // 使用try...catch...捕获异常 try { division(d1,d2); } catch(string &e) { cout<<e<<endl; } return 0; } d1不小心删除了 这个编译通过了 可是在2010版编译器上输入数字按回车就退出了
?
onemoo

TA贡献883条经验 获得超454个赞

你确定仅仅是不能显示吗?  难道不是编译失败吗!?

什么叫不能“正常显示”?  你想要的显示结果是什么样的??


从这一小段截取的代码看来:

第一个 cin 语句要存入 d1,d1 定义在哪里??  如果缺少定义会导致编译失败的。

try 块中的 division 函数,我不知道这个函数声明在哪里,以及该函数的行为。 你要确定 division 函数的行为是正确的。

查看完整回答
反对 回复 2016-12-19
  • 2 回答
  • 0 关注
  • 2271 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信