📄 21-3.txt
字号:
/* 范例:21-3 try...throw...catch */
#include <iostream.h>
void main(void)
{
int i, j;
cout << "请输入两数(i/j): " << endl;
cout << "i = "; cin >> i;
cout << "j = "; cin >> j;
try // 在执行时,try会检测监控这个程序区块。
{
if(j == 0) /* 由设计员判断,如果使用者键入j=0的话,会使用下面的throw()
指令丢出异常。 */
throw("i除以j, j不可以是0"); /* 送出异常后,会由下方定义的catch()异常
处理函数接收 */
cout << "i / j = " << i/j << endl;
}
catch(char s[15])
{
cerr << s << endl; // 将错误信息输出到屏幕上。
}
puts("按任意键跳出");
getchar();
}
Project p21-3.exe raised exception class char * with message 'Exception Object Address: 0x693436'. Process stopped. Use Step or Run to continue.
(当出现此信息时,再编译一次)
程序执行结果﹕
请输入两数(i/j):
i = 5
j = 0
i除以j, j不可以是0
按任意键跳出
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -