これを機能させることができないようです。wordexp()
私がそれを次のように呼ぶとき、素晴らしい働きをします:
wordexp("beep", &p, 0);
w = p.we_wordv;
argc = p.we_wordc;
argv
ただし、ユーザーが入力し、そこからとを取得するいくつかの値を渡したいと思いますargc
。現在、次のコードがありますが、常に「セグメンテーション違反」または「EXC_BAD_ACCESS」が発生します。
char **parseCommand(char *args, int *argc) {
printf("args %s\n", args);
wordexp_t p;
char **w;
int i;
char *beep;
wordexp(args, &p, 0);
w = p.we_wordv;
argc = p.we_wordc;
wordfree(&p);
return w;
}
引数を出力すると、それが表示されます。strcpy
別の文字列への引数も試しました。しかし、それでもエラーが発生します。ばかげたものでなければなりません(またはwordexpでこれを行うことはできません)?