sig2.c

来自「LINUX进程通信的学习资料」· C语言 代码 · 共 41 行

C
41
字号
/********** *sig2.c *  **********/#include <stdio.h>#include <stdlib.h>#include <sys/types.h>#include <signal.h>#include <unistd.h>#include <errno.h>#define PROMPT "Do U want to terminate program?"char *prompt=PROMPT;void ctrl_c_op(int signo){char c;write(STDERR_FILENO,prompt,strlen(prompt));if((c=getchar())=='y')	exit(0);}int  main(){ struct sigaction act;   act.sa_handler=ctrl_c_op;  sigemptyset(&act.sa_mask);  act.sa_flags=0;  if(sigaction(SIGINT,&act,NULL)<0)  {   fprintf(stderr,"Install Signal Action Error:%s\n\a",strerror(errno));   exit(1);  }  while(1);}  

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?