例外処理、abort()、exit()、エラーコードを返す

840 ワード

abort関数はcstdlibヘッダファイルにあり、プログラムを終了し、特定の実装に基づいてこのプログラムを呼び出すシステムまたはプロセスに値を返しますが、exit関数は単純にプログラムを終了し、メッセージを返しません.
abortの具体的な実装:
#include 
#include 

using namespace std;

double hmean(double a,double b){
	if(a==-b){
		cout<>x>>y){
		z=hmean(x,y);
		cout<

また、ファイルの読み書き時にファイルの末尾に特殊文字EOFを設定する操作と同様に、プログラムの実行時にエラーが発生した場合にエラーコードを返す操作もあります.
エラーコードを返す方法は、プログラムを終了せずにエラーを指摘し、スキップして再入力することができます.
#include 
#include   //DBL_MAX cfloat    

using namespace std;

bool hmean(double a,double b,double *z){
	if(a==-b){
		*z=DBL_MAX;  //           ,   false
		return false;
	}
	*z=2*a*b/(a+b);
	return true;
}

int main(){
	double x,y,*z;
	cout<>x>>y){
		if(hmean(x,y)){  //       
			cout<