我一直在尝试使用 excev 来启动我制作的程序。我需要说一些类似 execv("./myprogram");
的东西。但是,这不起作用。我试过 execv("myprogram");
。
帮助任何人?
最佳答案
const char *path = "./myprogram";
const char *arg0 = path;
if (execl(path, arg0, (char *) NULL) == -1) {
perror("execl");
}
试试吧。第一个参数是程序名,其余是命令行参数。第一个命令行参数传统上是程序的名称(在 shell 脚本中为 $0
)。所以你实际上传递了程序名称两次。参数列表的末尾用 (char *) NULL
表示。
如果这不起作用,请确保当前目录是正确的。
关于c++ - excev() 帮助 : can I use "./program"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16062803/