언어 자료구조 알고리즘/C11 표준 라이브러리 함수

exit 함수 [C언어 표준 라이브러리 함수 가이드]

언제나휴일 2016. 1. 3. 15:46
반응형

exit


헤더 파일

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - stdlib.h

 

void exit(int status); 프로세스 종료
입력 매개 변수 리스트
status 호스트 환경에게 알려 줄 종료 값
반환 값
없음
 
exit 함수는 정상적으로 프로세스를 종료하는 함수입니다.
abort 함수는 비정상적으로 프로세스를 종료할 때 사용합니다.
프로세스가 정상적으로 종료하면 열려져 있는 파일 스트림을 닫고 atexit 함수로 등록한 함수들을 수행하는 등의 정상적인 종료 작업을 수행합니다.
 
exit의 입력 인자로 전달하는 status는 호스트 환경에 전달하며 main 함수의 return 값과 같은 역할입니다.
 
사용 예
//C언어 표준 라이브러리 함수 사용법 가이드
//void exit(int status); 프로세스 종료
//1을 입력하면 정상 종료, 그 외의 값을 입력하면 비정상 종료
 
#include <stdlib.h>
#include <stdio.h>
 
void EndFunc(void);
int main(void)
{
    int i;
 
    _set_abort_behavior( 0, _WRITE_ABORT_MSG);//abort 함수 호출하였을 때 오류 창 뜨지 않게 설정   
    atexit(EndFunc);//프로그램 종료할 때 수행할 EndFunc 함수 등록
 
    printf("1을 입력하면 정상 종료\n");
    scanf_s("%d",&i);
 
    if(i==1)
    {
        exit(0);//정상 종료
    }
    abort();//비정상 종료
    printf("Here is main\n");//도달하지 않음
 
    return 0;
}
void EndFunc(void)
{
    printf("Here is EndFunc\n");
}
 
출력 1
1을 입력하면 정상 종료
1(입력)
Here is EndFunc
출력 2
1을 입력하면 정상 종료
0(입력)

 


 

사용한 함수

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - scanf_s

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - printf
[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - atexit
[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - abort

반응형