abort() — 프로그램 중단

형식

#include <stdlib.h>
void abort(void);

언어 레벨

ANSI

스레드세이프

설명

abort() 함수는 프로그램 비정상 종료를 야기하고 호스트 환경에 제어를 리턴합니다. exit() 함수와 마찬가지로 abort() 함수는 프로그램을 종료하기 전에 버퍼를 삭제하고 열린 파일을 닫습니다.

abort() 함수 호출은 SIGABRT 신호를 발생시킵니다. abort() 함수는 신호 핸들러가 SIGABRT를 포착하면 프로그램을 종료하지 않으며 신호 핸들러가 리턴되지 않습니다.

참고: SYSIFCOPT(*ASYNCSIGNAL)로 컴파일되면 신호 핸들러에서 abort() 함수를 호출할 수 없습니다.

리턴값

리턴값이 없습니다.

이 예는 myfile 파일 열기를 테스트합니다. 오류가 발생하면 오류 메세지가 출력되며 프로그램은 abort() 함수 호출로 종료됩니다.
#include <stdio.h>
#include <stdlib.h>
 
int main(void)
{
   FILE *stream;
 
   if ((stream = fopen("mylib/myfile", "r")) == NULL)
   {
      perror("Could not open data file");
      abort();
   }
}

관련 정보