#include <stdio.h>#include <sys/types.h>#include <stdlib.h>#include <signal.h>int flag = 1; void func(int sig) {printf("I get a signal! ");flag = 0;}int main(){signal(SIGINT, func);printf("pid:%ld ",(long)getpid());while(flag)pause();return 0;}执行,
#gcc sig.c -o sig#./sig在另一终端:#kill -INT 333//333是程序打印出的进程号查看全套文章:http://www.bianceng.cn/Programming/C/201212/34807.htm