1

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

4

1 回答 1

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

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

试试看。第一个参数是程序名称,其余是命令行参数。第一个命令行参数通常是程序的名称($0在 shell 脚本中)。因此,您实际上将程序名称传递了两次。参数列表的结尾用 表示(char *) NULL

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

于 2013-04-17T14:33:08.680 回答