program — 프로그램 지원 유틸리티

program — 프로그램 지원 유틸리티 (Program support utilities)

**프로그램 지원 유틸리티(program support utilities)**는 프로그램 종료와 자원 정리를 관리하는 함수들을 제공해요. 주로 <cstdlib>, <csignal> 헤더에 있어요.

출처: cppreference

본문

프로그램 종료 (Program termination)

함수 설명
std::abort 비정상 종료 (정리 없이)
std::exit 정상 종료 (atexit 핸들러 호출)
std::_Exit 즉시 종료 (일부 정리 생략)
std::quick_exit 빠른 종료 (quick_exit 핸들러)
std::atexit 정상 종료 시 호출 함수 등록
std::at_quick_exit quick_exit 시 호출 함수 등록

신호 (Signals, <csignal>)

함수 설명
std::signal 신호 처리기 설정
std::raise 신호 발생
#include <cstdlib>
#include <iostream>

void cleanup() { std::cout << "cleanup\n"; }

int main() {
    std::atexit(cleanup);     // 정상 종료 시 호출 등록
    // ...
    std::exit(0);             // 정상 종료 — cleanup 실행
    // std::abort();          // 비정상 — cleanup 미실행
}

종료 함수 비교

함수 atexit 핸들러 static 소멸자 즉시성
std::exit 실행 실행 정상
std::quick_exit 실행(quick) 미실행 빠름
std::_Exit 미실행 미실행 즉시
std::abort 미실행 미실행 비정상

프로그램 종료 상태

return/exit의 값이 호스트에 전달돼요. EXIT_SUCCESS(0), EXIT_FAILURE 등을 써요.

#include <cstdlib>
return EXIT_SUCCESS;   // 0

프로그램 지원 유틸리티는 프로그램의 수명주기(종료·정리·신호)를 관리하는 표준 함수 모음이에요.

더 알아보기 (Learn more)

cppreference