C语言-signal.h简单使用

来源:互联网 发布:surge for mac 教程 编辑:程序博客网 时间:2024/06/12 23:38

需求

监听到程序是否接收到退出命令,或者中断命令等处理.

需要用到的库

<signal.h>

常量解析

宏 信号 说明 SIGABRT Signal Abort 程序异常终止 SIGFPE Signal Floating-Point Exception 算术运算出错 如:除以0 SIGINT Signal Interrupt 中断信号 如:ctrl-C SIGSEGV Signal Segmentation Violation 非法访问不存在的内存单元 SIGTERM Signal Terminate 发送给本程序的终止请求信号.

signal() 函数用法

DEMO

#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <signal.h>void sighanlder(int);int main(){    signal(SIGINT, sighandler);    while(1)    {        print("start sleeping!");        sleep(1);//unit is second    }    return 0;}void sighandler(int signum){    printf("Catch a signal num is %d ...\n", signum);    exit(1);}
0 0
原创粉丝点击