006传统的异常错误处理机制return的形式

//009传统的异常错误处理机制return的形式
#include<iostream>
using namespace std;

int my_strcopy(char*to,char*from)
{
	if (from==NULL)
	{
		return 1;
	}
	if (to==NULL)
	{
		return  2;
	}
	//copy时候的场景检查
	if (*from=='a')//规定不能以a开头
	{
		return 3;
	}
	while (*from!='\0')
	{
		*to = *from;
		to++;
		from++;
	}
	*to = '\0';
	return 0;
}
int main(void)
{
	int ret = 0;
	char buf1[] = "jisuanjizuchegnyuanli";
	char buf2[1024] = { 0 };
	ret = my_strcopy(buf2, buf1);
	//进行返回值的判断
	if (ret!=0)
	{
		switch (ret)
		{
		case 1:
			cout << "源buf出错" << endl;
			break;
		case 2:
			cout << "目的buf出错" << endl;
			break;
		case 3:
			cout << "拷贝过程中出错" << endl;
			break;
		default:
			cout << "未知错误" << endl;
			break;
		}
	}
	cout << buf2 << endl;
	system("pause");
	return 0;
}
/*
 * jisuanjizuchegnyuanli
请按任意键继续. . .
---------------------------------
要通过函数返回值的类型来判断函数执行过程的错误

 */

猜你喜欢

转载自blog.csdn.net/baixiaolong1993/article/details/89500496
今日推荐