私は自分が作成したプログラムを起動するために excev を使用しようとしています。のようなことを言う必要がありますexecv("./myprogram");
。しかし、それはうまくいきません。私は試しexecv("myprogram");
ました。誰か助けて?
質問する
658 次
1 に答える
1
const char *path = "./myprogram";
const char *arg0 = path;
if (execl(path, arg0, (char *) NULL) == -1) {
perror("execl");
}
それを試してみてください。最初の引数はプログラム名で、残りはコマンドライン引数です。最初のコマンド ライン引数は、伝統的にプログラムの名前です ($0
シェル スクリプト内)。したがって、実質的にプログラム名を 2 回渡します。引数リストの終わりは で示され(char *) NULL
ます。
それでもうまくいかない場合は、現在のディレクトリが正しいことを確認してください。
于 2013-04-17T14:33:08.680 に答える