C言語のEXIT_SUCCESSについてわかりやすく解説

C言語において、プログラムが正常に終了したことを示すためにEXIT_SUCCESSという定数が使われることがあります。

この記事では、EXIT_SUCCESSの意味などを解説していきます。

目次

EXIT_SUCCESSとは?

EXIT_SUCCESSは、C言語においてプログラムが正常終了したことを示すための定数です。この定数は、stdlib.hヘッダーファイルをインクルードすると使用できます。

通常、C言語のmain関数はint型の値を返します。

そして、main関数が正常に終了した場合には0を返すことが一般的ですが、EXIT_SUCCESS定数の中身は0であるため、return EXIT_SUCCESSを使用することでプログラムの可読性を向上させることができます。

以下に、EXIT_SUCCESSを使用したサンプルコードを示します。

#include <stdio.h>
#include <stdlib.h>

int main() {
    printf("Hello, World!\n");
    return EXIT_SUCCESS;
}

このプログラムでは、main関数内でprintf関数を用いてHello, World!という文字列を出力しています。そして、return文でEXIT_SUCCESS(0)を返しています。

以上がEXIT_SUCCESSについての簡単な解説です。

EXIT_SUCCESSの使い方

C言語には、プログラムが正常に終了したことを示すための定数があります。それがEXIT_SUCCESSです。

EXIT_SUCCESSは、stdlib.hヘッダーファイルをインクルードすると使えるマクロ定数であり、0が定義されています。

main関数が正常に終了した場合には0を返すことが一般的ですが、EXIT_SUCCESS定数の中身は0であるため、return EXIT_SUCCESSと記述することでプログラムの可読性を向上させることができます。

以下は、EXIT_SUCCESSを使用するサンプルコードです。

#include <stdio.h>
#include <stdlib.h>

int main(void) {
    printf("Hello, World!\n");
    return EXIT_SUCCESS;
}

このプログラムでは、main関数内でprintf関数を用いてHello, World!という文字列を出力しています。そして、return文でEXIT_SUCCESS(0)を返しています。

一方で、異常終了する場合には、main関数から0以外の値を返します。例えば以下のようなコードでは、ファイルが開けなかった場合に1を返しています。

#include <stdio.h>
#include <stdlib.h>

int main(void) {
    FILE *fp;
    fp = fopen("not_exist_file.txt", "r");
    if (fp == NULL) {
        printf("File not found.\n");
        return 1; // 異常終了
    }
    fclose(fp);
    return EXIT_SUCCESS; // 正常終了
}

以上のように、C言語ではプログラムの正常・異常終了時にそれぞれ決まった値を返すことで状態を表現します。その中でも最も一般的な正常終了時の値がEXIT_SUCCESSです。

EXIT_SUCCESSとEXIT_FAILUREの違い

C言語において、EXIT_SUCCESSEXIT_FAILUREはプログラムの終了ステータスを表すために使用されます。これらの定数は、標準ライブラリで定義されています。

EXIT_SUCCESSは、プログラムが正常に終了したことを示します。一方、EXIT_FAILUREは、プログラムが異常終了したことを示します。

具体的には、プログラムがエラーを検出して強制終了する場合や、予期しない入力値が与えられた場合などが該当します。

以下の例では、条件分岐文で変数xの値が0より大きいかどうかを判断し、それぞれ異なる終了ステータスを返しています。

#include <stdlib.h>
#include <stdio.h>

int main() {
    int x = -1;
    if (x > 0) {
        printf("x は正数です\n");
        return EXIT_SUCCESS;
    } else {
        printf("x は負数です\n");
        return EXIT_FAILURE;
    }
}

この例では、変数xの値が負の値であるため、「x は負数です」というメッセージが表示されます。そして、exit()関数によってプログラムが異常終了し、戻り値としてEXIT_FAILURE(=1)が返されます。

終わりに

以上が、C言語におけるEXIT_SUCCESSについての解説でした。

EXIT_SUCCESSは、プログラムの正常終了を示すために使われる定数であり、プログラミングにおいて非常に重要な役割を担っています。

また、EXIT_FAILUREとの違いも理解しておくことが大切です。

目次