急!throw出错……

smartpiganddog 2003-08-22 04:08:35
如下:
int main(int argc, char* argv[])
{
int a,b;
cin>>a>>b;
try
{
if(b==0)
throw b;
cout<<a/b<<endl;
}
catch (int)
{
cout<<"Error"<<endl;
}
system("pause");
return 0;
}
我在cb6控制台写了这么很简单的一段。通过求a/b来试验try,throw,catch.当输入12 4(b不等于0)能顺利运行,可是一旦当b等于0是就会出错误代码:
---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class int with message 'Exception Object Address: 0x9957E2'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
请问各位是怎么回事啊
...全文
15 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lybapple 2003-08-22
  • 打赏
  • 举报
回复
#include<iostream.h>
int main(int argc, char* argv[])
{
int a,b;
cin>>a>>b;
try
{
if(b==0)
throw b;
cout<<a/b<<endl;
}
catch (int)
{
cout<<"Error"<<endl;
}
return 0;
}
在vc6.0中没有错。
njtu 2003-08-22
  • 打赏
  • 举报
回复
//test in dev c++ 没问题
aflyinghorse 2003-08-22
  • 打赏
  • 举报
回复
我在dev-cpp下运行正常
b==0时显示Error

64,281

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧