エラーが発生した場合に 1 を返す関数がいくつかあります。各関数は下位レベルの関数を呼び出します。下位レベルの関数が 1 を返す場合、元の関数も 1 を返します。したがって、エラーはこのようにチェーンを通過します。
以下は、これらの関数の 1 つの高度に簡略化されたバージョンです。
if (low_level_function()) {
[do stuff]
return 1;
}
[do other stuff]
return 0;
代わりにエラー変数を宣言し、それに low_level_function() の結果を割り当ててから、if() ステートメントでエラー変数を使用する必要がありますか? 言い換えると:
int error = low_level_function();
if (error) {
[do stuff]
return 1;
}
[do other stuff]
return 0;
または、これを行う別のより良い方法はありますか?これまでエラーを考慮してコーディングしたことがないため、ここでの経験はかなり限られています。
編集: コードの性質をよりよく伝えるために、関数を再フォーマットしました。