Таким образом, GNU Getopt поддерживает только параметры в середине? - PullRequest
1 голос
/ 02 июля 2011

Я пытаюсь getopt API:

http://www.gnu.org/s/hello/manual/libc/Example-of-Getopt.html#Example-of-Getopt

Но я считаю, что он поддерживает только параметры в середине?

Как я обнаружил, он оценивает argv[optind] до argv[argc-1] как необязательные аргументы.

Это тот случай?

1 Ответ

5 голосов
/ 02 июля 2011

GNU getopt позволяет использовать параметры в любом месте командной строки.Однако при синтаксическом анализе он переупорядочивает argv.В этом можно убедиться, сохранив пример кода в файле, скомпилировав его и запустив результат:

./a.out
./a.out -a
./a.out foo
./a.out -a foo
./a.out foo -a

Последние два приведут к одинаковым результатам.

...