- 论坛徽章:
- 0
|
我用magic c++写得如下代码,编译后却说找不到"sys/wail.h"文件,为什么呢,我在magic c++得安装目录下查找此文件,是没有找到.
难道magic c++ 不支持创建进程嘛,但我看 : www.magicunix.com中说magic c++支持多进程嘛.
#include <iostream>
#include <sys/types.h>
#include <unistd.h>
#include <sys/wait.h>
using namespace std;
int main(void)
{
char buf[8192] = {0};
pid_t pid;
int status = 0;
printf("%$ ");
while (NULL != fgets(buf, sizeof(buf), stdin))
{
if ((pid = fork()) < 0)
{
printf("%s", "fork error");
return -1;
}
if (pid == 0)
{
execlp(buf, buf, (char *)0);
printf("%s%s", "couldn't execute: ", buf);
return -1;
}
if ((pid = waitpid(pid, &status, 0)) < 0)
{
printf("%s", "waitpid error");
return -1;
}
}
return 0;
}
编译错误提示:
sys/wait.h: No such file or directory
dir.cpp: In function `int main()':
C:\Documents and Settings\Administrator\桌面\dirent\dir.cpp(97): `fork' undeclared (first use this function)
C:\Documents and Settings\Administrator\桌面\dirent\dir.cpp(97): (Each undeclared identifier is reported only once for each function
it appears in.)
C:\Documents and Settings\Administrator\桌面\dirent\dir.cpp(110): `waitpid' undeclared (first use this function)
make: *** [dir.o] Error 1 |
|