C言語やC++では、system()関数を利用することでコマンドを実行できます。
しかし、system()関数は、戻り値としてコマンドの成否しか返さないため、実行したコマンドの詳細なステータスを取得することができません。
(system関数()は、シェルの実行結果を返します。そのため、コマンドでエラーが発生した場合、どのようなエラーなのかまで特定できません)
ここでは、Linux環境で詳細な終了ステータスを取得する方法について説明します。

Linuxで詳細な終了ステータスを取得したい場合、WEXITSTATUS()マクロを利用します。

以下、サンプル。
例として、ネットワークコマンドのpingコマンドを用いて説明します。
続きを読む