我正在努力实现使用C语言在进程中捕获信号的能力。
任何人都可以帮我解决一个有效的例子吗?
感谢。
答案 0 :(得分:0)
您需要使用signal.h
库。
这是一个工作示例,我在其中捕获SIGINT并将消息打印到STDOUT:
#include<stdio.h>
#include<signal.h>
void sig_handler(int signo)
{
if (signo == SIGINT)
write(0, "Hello\n", 6);
}
int main(void)
{
signal(SIGINT, sig_handler);
// Just to testing purposes
while(1)
sleep(1);
return 0;
}