C 표준 라이브러리 - <signal.h>


Introduction

signal.h 헤더 파일은 프로그램 실행 중에 보고되는 다양한 신호를 처리하기 위한 변수 유형 sig_atomic_t, 두 개의 함수 호출 및 일부 매크로를 정의합니다.

라이브러리 변수

다음은 헤더 파일 signal.h에 정의된 변수 유형입니다.

Serial numberVariable & Description
1sig_atomic_t
이것은 int 유형 , in signal 핸들러에서 변수로 사용됩니다. 비동기 신호가 있는 경우에도 원자적 엔터티로 액세스할 수 있는 정수 유형의 개체입니다.

라이브러리 매크로

다음은 헤더 파일 signal.h에 정의된 매크로입니다. 이 매크로는 다음 두 가지 기능에 사용됩니다. SIG_ 매크로는 신호 기능을 정의하기 위해 신호 함수와 함께 사용됩니다.

일련 번호매크로 및 설명
1SIG_DFL
기본 신호 처리기.
2SIG_ERR
은 신호 오류를 나타냅니다.
3SIG_IGN
신호를 무시하세요.

SIG 매크로는 다음 조건의 신호 번호를 나타내는 데 사용됩니다. 프로그램이 비정상적으로 종료되었습니다.

20으로 나누기 또는 오버플로와 같은 산술 연산 오류입니다. 불법 명령 등 불법 함수 이미지. ctrl-C와 같은 인터럽트 신호. 존재하지 않는 메모리 유닛에 접근하는 등 메모리에 대한 불법 접근. 이 프로그램에 보낸 종료 요청 신호입니다. Serial number1
SIGFPE
3
SIGILL
4
SIGINT
5
SIGSEGV
6
SIGTERM
라이브러리 함수
다음은 헤더 파일 signal.h에 정의된 함수입니다:
Function & Description
void (*signal(int sig, void (* func)(int)))(int)

이 함수는 시그널을 처리하는 함수, 즉 시그널 핸들러를 설정합니다.

2int raise(int sig)sig
이 함수를 사용하면 신호가 생성됩니다. sig 매개변수는 SIG 매크로와 호환됩니다.