p178.cpp

来自「《C++编程指南(续编)》的一些程序源代码」· C++ 代码 · 共 68 行

CPP
68
字号
#include <iostream.h>

#define HARD_FAILURE 1
#define SOFT_FAILURE 2

char * pErrors[]={"No error",
                  "Hard failure",
				  "Soft failure"};
int fnb()
{
	return SOFT_FAILURE;
} 
int fnd()
{
	return SOFT_FAILURE;
}
int fnc()
{
	int nErrRtn;

	nErrRtn=fnb();
	if(nErrRtn)
	{
		cout<<pErrors[nErrRtn]
			<<"returned from fnb() in fnc()"
			<<endl;
		return HARD_FAILURE;
	}
	return 0;
}
int fna()
{
	int nErrRtn;

	nErrRtn=fnc();
	if(nErrRtn)
	{
		cout<<pErrors[nErrRtn]
			<<"returned from fnc() in fna()"
			<<endl;
		return nErrRtn;
	}
	nErrRtn=fnb();
	if(nErrRtn)
	{
		cout<<pErrors[nErrRtn]
			<<"returned from fnb() in fna()"
			<<endl;
		return nErrRtn;
	}
	return 0;
}

int main(int ,char **)
{
	int nErrRtn=fna();
	if(nErrRtn)
	{
		cout<<pErrors[nErrRtn]
			<<"returned from fna()"
			<<endl;
	}
	else
	{
		cout<<"No error"<<endl;
	}
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?