strsignal() 函数原型如下:
[C++] 纯文本查看 复制代码 #include <string.h>
char *strsignal(int sig);
extern const char * const sys_siglist[];
strsignal() 返回一个字符串用以描述由参数 sig 指出的信号的描述信息,如果给出的信号不能识别,那么就打印出无法识别的信号信息。实际上,这些描述信息已经存在一个名为 sys_siglist[] 的数组之中,可以直接引用该数组,但是用 strsignal() 函数会显得更简洁。
测试代码:
[C++] 纯文本查看 复制代码 #include <stdio.h>
#include <string.h>
#include <signal.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
if (argc != 2) {
printf("usage: %s sig_num\n", argv[0]);
exit (EXIT_FAILURE);
}
int sig;
sig = atoi(argv[1]);
printf ("%s\n", strsignal(sig));
return 0;
}
运行输出:$ ./strsignal 9
Killed
$ ./strsignal 2
Interrupt
$ ./strsignal 3333
Unknown signal 3333 |