c++异常处理

异常处理
常见的异常:
                  数组下标越界、除数为0、内存不足


下面看一个除数为0的异常处理的例子:
/**************************************************************************************/
函数division的两个参数为dividend(被除数)和divisor(除数)
要求用户输入除数和被除数,并作为参数传递给division函数
如果除数为0,则抛出异常,并被捕获,将异常的内容显示到屏幕上
/**************************************************************************************/

#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 {
		r=division(d1,d2);
	}
	catch (string &str)
	{
		cout << str << endl;
	}
	system("pause");
	return 0;
}

运行结果如下:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值