😸

[C] atexit 関数

に公開

機能

プログラム終了時に実行する関数を登録する[1]

使用例

終了時に呼ばれました と表示する

\n は改行を表す エスケープシーケンス[2]

コード

atexit(func);

void func(void) {
    printf("終了時に呼ばれました\n");
}
全文
#include <stdio.h>
#include <stdlib.h>

void func(void) {
    printf("終了時に呼ばれました\n");
}

void main() {
    atexit(func);
}

実行結果

終了時に呼ばれました

プログラム終了 を変数から表示する

コード

const char *msg = "プログラム終了\n";
void bye(void) { printf(msg); }
atexit(bye);
全文
#include <stdio.h>
#include <stdlib.h>

const char *msg = "プログラム終了\n";

void bye(void) {
    printf(msg);
}

void main() {
    atexit(bye);
}

実行結果

プログラム終了
脚注
  1. atexit関数は、main関数やexit関数でプログラムが終了する際に自動的に呼び出される関数を登録する機能。最大32個まで登録可能。 ↩︎

  2. 改行やタブなど、画面に表示されない制御文字のこと。 ↩︎

Discussion