当前位置: 首页探索正文谢尔米尼亚克探索 免费 参见 莱茵兰-普法尔茨州市镇列表 参考 莱茵兰-普法尔茨州市镇普法总人口577人,尔茨普法尔茨费尔德(德语:)是普法德国莱茵兰-普法尔茨州的一个市镇。其中男性295人,尔茨人口密度109人/平方公里。普法总面积5.27平方公里,尔茨女性282人(2011年12月31日),普法声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。谢尔米尼亚克bjvi普通 收藏 链接
" src="signal.h是C标准函数库中的信号处理部分, 定义了程序执行时如何处理不同的信号。信号用作进程间通信, 报告异常行为(如除零)、用户的一些按键组合(如同时按下Ctrl与C键,产生信号SIGINT)。 C++中的对应头文件是csignal。 标准信号 C语言标准定义了6个信号。都定义在signal.h头文件中。 SIGABRT - 异常中止。 SIGFPE - 浮点异常。 SIGILL - 无效指令。 SIGINT - 交互的用户按键请求,默认情况下,这会导致进程终止。 SIGSEGV - 无效内存访问。 SIGTERM - 程序的中止请求。 signal.h可能还定义了其它信号,这依赖于具体实现。例如,类Unix系统还定义了15个以上的信号。Visual C++的C标准库只支持C语言标准规定的6个信号,即对信号处理只提供最小的支持。 信号处理 库函数raise()或者系统调用kill()可以产生信号。raise()发送一个信号给当前进程,kill()发送一个信号给特定进程。 除了两个信号SIGKILL与SIGSTOP不能被捕获(caught)、阻塞(blocked)或者忽略,其它的信号都可以指定处理函数(handler)。一个信号的处理函数在信号到达时,被目标环境调用。目标环境挂起当前进程的执行,直到信号处理函数返回或者调用了longjmp()。为了最大的兼容性,异步信号处理只应: 成功调用了signal()指定的函数; 给类型为sig_atomic_t的对象赋值; 把控制返回给它的调用者。 如果信号报告了进程的错误,信号处理函数应该调用abort(), exit()或longjmp()。 函数 例子 #include #include #include static void catch_function(int signal) { puts("Interactive attention signal caught."); } int main(void) { if (signal(SIGINT, catch_function) == SIG_ERR) { fputs("An error occurred while setting a signal handler.\n", stderr); return EXIT_FAILURE; } puts("Raising the interactive attention signal."); if (raise(SIGINT) != 0) { fputs("Error raising the signal.\n", stderr); return EXIT_FAILURE; } puts("Exiting."); return 0; } 参见 信号 (计算机科学) 参考文献 外部链接 XGC's manual for signal.h C标准库头文件" alt="Signal.h" />Signal.h