首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >spawn()函数(在“spawn.h”中声明)来自哪里?

spawn()函数(在“spawn.h”中声明)来自哪里?
EN

Stack Overflow用户
提问于 2012-08-22 05:39:41
回答 1查看 4.1K关注 0票数 0

我不能编译这个简单的程序

代码语言:javascript
复制
#include<stdio.h>
#include<conio.h>
#include<spawn.h>
#include<process.h>

int main(){
    printf("Spawning new process...\n");
    spawnl(P_WAIT,"curl","www.google.co.in",NULL);
    system("cls");
    printf("Program execution completed somehow!\n");
    getch();
    return 0;
}

我已经尝试使用以下命令:

代码语言:javascript
复制
g++ filename.cpp -l -o filename.cpp

结果:ld.exe cannot find -l exit with status 1

代码语言:javascript
复制
g++ filename.cpp -o filename

结果:error: spawn.h No such file or directory.

我的MinGW安装有问题吗?我使用的是32位Windows7和MinGW。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-22 05:46:27

spawn.h不是标准的C/C++头文件。POSIX定义了一个非标准的Windows头,但它没有定义spawnl函数,而且无论如何,<spawn.h>都不是符合POSIX的系统。

Windows确实在<process.h>中定义了_spawnl函数,因此最简单的做法就是删除包含的<spawn.h>并使用它。您还可以重写代码以使用窗口函数CreateProcess

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12063462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档