23,124
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <signal.h>
int main()
{
const int BUFSIZE = 100;
char buf[BUFSIZE];
int i;
signal(SIGINT, SIG_IGN);
while(getc(buf))
putc(buf);
signal(SIGINT, SIG_DFL);
for(i = 1; ;++i)
printf("%d%c", i, (i%15 ? ' ' : '\n'));
return 0;
}
#include <stdio.h>
#include <signal.h>
int break_while = 0;
void signal_handler2(int signum)
{
printf("2st signal is %d\n", signum);
signal(SIGINT, SIG_DFL);
break_while = 1;
}
void signal_handler(int signum)
{
printf("1st signal is %d\n", signum);
signal(SIGINT, signal_handler2);
}
void main()
{
char buf[100] = {0};
int i;
signal(SIGINT, signal_handler);
while(gets(buf) && !break_while)
puts(buf);
for (i=1; ; ++i)
printf("%d%c", i, i%15 ? ' ' : '\n');
}