_execl() 返回 -1 和错误消息“没有这样的文件或目录”,即使给定的文件在那里。当我直接在命令提示符下运行 gzip 命令时,它可以工作。我无法理解我在这里缺少什么。
#include <stdio.h>
#include <process.h>
#include <errno.h>
void main(){
int ret = _execl("cmd.exe", "gzip.exe", "C:\\Users\\user_name\\work\\Db618\\test.txt");
printf("ret: %d \t strerror: %s\n", ret, strerror(errno));
}
有人可以举例说明如何使用此功能,我在寻找解决方案时发现了另外一个 API system(),但在使用之前我想知道这两者在 Windows 平台上的区别是什么?