概述
linux系统中的每一个信号都有一串与之相对应的字符串描述信息,用于对该信号进行相应的描述。这些字符串位于sys_siglist数组中。
sys_siglist数组是一个char * 类型的数组,数组中的每一个元素存放的是一个字符串指针,指向一个信号的描述信息。
使用数组获取信号描述信息
sys_siglist [ 信号名 ] 来获取SIGINT信号的描述。
示例
正点原子linux应用编程中的示例
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
printf("SIGINT 描述信息: %s\n", sys_siglist[SIGINT]);
printf("SIGQUIT 描述信息: %s\n", sys_siglist[SIGQUIT]);
printf("SIGBUS 描述信息: %s\n", sys_siglist[SIGBUS]);
exit(0);
}
运行结果
使用函数
strsignal()
作用:获取信号的描述信息,推荐使用
函数原形
#include <string.h>
char *strsignal(int sig)
函数参数
sig:要获取描述信息的信号
返回值
成功:信号描述信息
sig无效:Unknown signal
psignal()
作用:在标准错误(stderr)上输出信号描述信息。并且还允许调用着添加一下输出信息,有参数s指定,
函数原形
#include <signal.h>
void psignal(int sig, const char *s)