中的一个程序,不解,求教.............
我看到信号一章.
问题如下:
1.接收信号后,程序怎么执行?转去执行处理函数,还是2边一起进行?
2.处理函数结束后,程序怎么执行?
3.这个程序在WINDOWS下非法操作,LINUX下无法正常退出,需要另外kill掉.为什么?
PS:先感谢一下大家的热情.
付书中程序入下:
#include <setjmp.h>
#include <signal.h>
#include <stdio.h>
jmp_buf buf;
void handler(int s)
{
if (s == SIGINT )
printf("now got a SIGINT signal\n");
longjmp(buf,1);
}
int main()
{
signal(SIGINT,handler);
if(setjmp(buf))
printf("back in main\n");
else
printf("first time in main");
loop:
goto loop;
return 0;
}