C++中try与catch的使用例子
时间: 2023-07-28 16:38:08 浏览: 131
try和catch是C++中异常处理的关键字。下面是一个使用try和catch的例子:
```C++
#include <iostream>
using namespace std;
int main() {
int a, b;
cout << "Enter two numbers: ";
cin >> a >> b;
try {
if (b == 0) {
throw "Division by zero error!";
}
cout << "Result: " << a / b << endl;
}
catch (const char* msg) {
cout << "Exception caught: " << msg << endl;
}
return 0;
}
```
在这个例子中,我们要求用户输入两个整数,然后计算它们的商。如果第二个数为0,我们就抛出一个异常,表示除以0的错误。在try块中,我们进行了除法运算,如果出现异常,则会跳转到catch块中。在catch块中,我们输出了错误消息。
相关问题
c++中的try catch的示例
C 语言中的 try catch 的示例代码如下:
```
#include <stdio.h>
#include <stdlib.h>
int main()
{
int dividend = 20;
int divisor = 0;
int quotient;
quotient = dividend / divisor;
printf("Quotient : %d\n", quotient);
return 0;
}
```
可以使用 try catch 块来捕获除数为 0 时的异常:
```
#include <stdio.h>
#include <stdlib.h>
int main()
{
int dividend = 20;
int divisor = 0;
int quotient;
try {
if (divisor == 0) {
throw "Division by zero error";
} else {
quotient = dividend / divisor;
printf("Quotient : %d\n", quotient);
}
} catch (const char* message) {
printf("%s\n", message);
}
return 0;
}
```
在运行时,该代码将输出:"Division by zero error"。
c++中try和catch的用法
在 C++ 中,try和catch是异常处理的关键字,用于处理程序运行过程中出现的异常情况。
`try` 块用于包含可能会抛出异常的语句,如果在 `try` 块中发生了异常,则会跳到与之对应的 `catch` 块中进行处理。
`catch` 块用于捕获并处理异常,可以有多个 `catch` 块,每个 `catch` 块可以捕获不同类型的异常。
下面是一个简单的例子:
```c++
try {
// 可能会抛出异常的语句
int result = func();
// ...
} catch (int e) {
// 处理类型为 int 的异常
// ...
} catch (double e) {
// 处理类型为 double 的异常
// ...
} catch (...) {
// 处理其他类型的异常
// ...
}
```
在上面的例子中,`try` 块中调用了一个函数 `func()`,该函数可能会抛出异常。如果在 `try` 块中发生了异常,则会跳到与之对应的 `catch` 块中进行处理。如果抛出的异常类型为 `int`,则会被第一个 `catch` 块捕获并进行处理;如果抛出的异常类型为 `double`,则会被第二个 `catch` 块捕获并进行处理;如果抛出的异常类型不是 `int` 和 `double`,则会被最后一个 `catch` 块捕获并进行处理。
需要注意的是,在 `catch` 块中可以使用 `throw` 关键字将异常重新抛出,以便让更高级别的代码处理该异常。例如:
```c++
try {
// 可能会抛出异常的语句
int result = func();
// ...
} catch (int e) {
// 处理类型为 int 的异常
// ...
throw; // 将异常重新抛出
} catch (...) {
// 处理其他类型的异常
// ...
}
```
阅读全文