linux下c调用外部程序的时候怎么能不等待程

linux下c调用外部程序的时候怎么能不等待程,第1张

Linux中启动另一个可执行文件或程序用system函数最理想了,这个函数将在你编写的那个程序的内部启动另一个程序,从森贺闭而创建一个新进程,并等待这个进程执行此裂完毕退出。如果正常执行,system函数将返回被执行程序的退出码;如果无法运行这个程序,将返回错误代码127;如果是其他错误,返回-1。这个函数的原拍中型是:

#include <stdlib.h>

int system(const char *string)

参数string是将要执行的程序的命令字符串。

还有一种执行外部程序的方法是exec系列函数,但这个系列的函数都是将当前进程的替换成新进程,也就是说原来的进程不存在了。

使用系统函数:

#include<unistd.h>

int execvp(const char *file ,char * const argv [])

execvp()会从PATH 环梁段境变量慎悔所指的目录中查找符合参数宽渣正file 的文件名(就是可执行程序名,外部命令名),找到后便执行该文件,然后将第二个参数argv传给该欲执行的文件(可执行程序的参数,或者说外部命令的参数)。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8238334.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-14
下一篇2023-04-14

发表评论

登录后才能评论

评论列表(0条)

    保存