c signal调用问题
开始学OS,按练习要求写的代码在gcc下无法编译:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <signal.h>
void SIGFPEhandler2(int sig1) {
printf("1");
signal(SIGFPE, SIGFPEhandler1);
exit(EXIT_SUCCESS);
}
void SIGFPEhandler1(int sig2) {
signal(SIGFPE, SIGFPEhandler2);
printf("2");
exit(EXIT_SUCCESS);
}
int DBZ(int i) {
return i/0;
}
int main(void) {
(void) signal(SIGFPE, SIGFPEhandler1);
DBZ(5);
return EXIT_SUCCESS;
}
目的让signal handler调用另一个 handler,都是处理同样的signal。编译提示SIGFPEhandler1 undeclare.
是我实现的方法不对还是handler不能调用处理同样signal的handler? 望大家指正。
在linux下吗?
windows下, 用的Cygwin.
在SIGFPEhandler2 前 声明 SIGFPEhandler1
函数缺少前置声明
加
void SIGFPEhandler1(int sig2);
void SIGFPEhandler2(int sig1);
在文件头后
编译不能通过, SIGFPEhandler2 undeclared.
相关问答:
RT
c程序设计语言
C程序设计潭浩强的那本
c程序设计语言
c陷阱与缺陷
C和指针
C primer plus
c专家编程
C语言之四书五经
千万不要看谭浩强的,会害死你。
直接看The C Programming Lang ......
我现在想将这四个文件从服务器\\10.2.95.88\temp目录下的四个文本文件:1.txt ,2.txt ,3.txt , 4.txt从服务器下载到本地机的C:\temp目录下?
上述的功能我想用纯C应该如何实现?
用ftp协议就可以了
引用 ......
一个数如果好等于它的因子之和,这个数就成为"完数",例如6的因子为1,2,3而6=1+2+3,而6=1+2+3,因此6是“完数".编程序找出1000之内的所有完数,并按下面格式输出其因子:6 its factors are 1,2,3
......
struct s1 {
char ch, *ptr;
union {
short a, b;
unsigned int c:2, d:1;
}
struct s1 *next;
};
主要看不懂符号 :
请达人指点一二
http://blog.cechina.cn/true ......