excev()帮助:我可以使用“./program”吗?

时间:2013-04-17 14:30:06

标签: c++ linux exec

我一直在尝试使用excev来启动我制作的程序。我需要说execv("./myprogram");之类的话。但是,这不起作用。我试过了execv("myprogram");。 帮助任何人?

1 个答案:

答案 0 :(得分:0)

const char *path = "./myprogram";
const char *arg0 = path;

if (execl(path, arg0, (char *) NULL) == -1) {
    perror("execl");
}

试试吧。第一个参数是程序名称,其余是命令行参数。第一个命令行参数传统上是程序的名称(shell脚本中的$0)。所以你传递程序名两次,实际上。参数列表的末尾用(char *) NULL表示。

如果不起作用,请确保当前目录正确。