如何解决如何测试fork(); Windows 上的函数
我在 Visual Studio 代码中尝试使用以下代码进行作业:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main(int argc,char *argv[]) {
printf("hello world (pid:%d)\n",(int) getpid());
int rc = fork();
if (rc < 0) {
// fork failed
fprintf(stderr,"fork failed\n");
exit(1);
} else if (rc == 0) {
// child (new process)
printf("hello,I am child (pid:%d)\n",(int) getpid());
} else {
// parent goes down this path (main)
printf("hello,I am parent of %d (pid:%d)\n",rc,(int) getpid());
}
return 0;
}
我最初遇到内置编译器的问题,所以我切换到 Windows gcc 编译器的 MinGW,现在给了我错误:
p1.c: In function 'main':
p1.c:9:10: warning: implicit declaration of function 'fork' [-Wimplicit-function-declaration]
int rc = fork();
^~~~
C:\Users\X1\AppData\Local\Temp\ccGunGbh.o:p1.c:(.text+0x28): undefined reference to `fork'
collect2.exe: error: ld returned 1 exit status
现在据我所知,gcc 或其他东西中缺少 fork() 函数。有没有其他的 C 编译器可以尝试测试这个函数?或者是否有针对 gcc 的解决方法?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。