C함수 프로그램 종료 때 실행할 함수 등록 atexit()
프로그램이 종료될 때 실행하고 싶은 함수를 등록합니다. 즉, 종료 핸들러를 여러 개 등록할 수 있습니다.
- 헤더: stdlib.h
- 형태: int atexit(void (*function)(void))
- 인수: void (*function)(void) 종료 시 실행할 핸들러 함수
- 반환: int 0 == 성공, 0 != 실패
C언어 atexit() 함수 예제
#include <stdio.h>
#include <stdlib.h>
static void on_exit1()
{
printf( "on_exit1() 호출\n");
}
static void on_exit2()
{
printf( "on_exit2() 호출\n");
}
static void on_exit3()
{
printf( "on_exit3() 호출\n");
}
int main( void)
{
if ( 0 != atexit( on_exit1)) printf( "on_exit1() 등록 실패\n");
if ( 0 != atexit( on_exit2)) printf( "on_exit2() 등록 실패\n");
if ( 0 != atexit( on_exit3)) printf( "on_exit3() 등록 실패\n");
printf( "프로그램이 종료됩니다.\n");
return 0;
}
C언어 atexit() 예제 실행 결과
]$ ./a.out
프로그램이 종료됩니다.
on_exit3() 호출
on_exit2() 호출
on_exit1() 호출
]$
'컴퓨터 > 프로그래밍' 카테고리의 다른 글
C언어 자식 프로세스가 종료될 때까지 대기 함수 wait() (0) | 2020.03.15 |
---|---|
C언어 프로그램 종료 함수 exit() (0) | 2020.03.15 |
C언어 프로세스 생성 함수 vfork() (0) | 2020.03.15 |