execvpe argv参数匹配语法帮助需要

时间:2011-04-27 19:07:21

标签: c parameters argv execvp

我得到“从不兼容的指针类型传递'execvp'的参数2”和
 期望'char * const *'但参数类型为'const char **' 我想知道正确的语法是什么?谢谢!


int main(int argc, const char* argv[]) {
  if(argv[0]!=NULL)
    return -1;
  int pid = fork();
  if(pid==0)
    execvp(argv[0],argv+strlen(argv[0]));
  else
    wait();
  return 0;
}

1 个答案:

答案 0 :(得分:2)

exec个函数不接受const char*。在您的情况下,只需将argv更改为char*,这就是正确的原型。

顺便说一下。 argv + strlen(argv[0])没有任何意义,你的意思是什么?