Самый надежный / масштабируемый способ реализовать поддержку флагов командной строки? [Дубликат]

0

Как мне реализовать поддержку флагов командной строки, которые могут отображаться в любом порядке?

Например, gcc -I "dir" -o "file" -o1....

Чтение каждого argv и сравнение его с каждым возможным флагом кажутся плохой практикой для меня и трудно поддерживать.

  • 0
    Попробуйте дружественный getoptlong
  • 0
    linux.die.net/man/3/getopt_long
Теги:

2 ответа

2

Я рекомендую использовать Boost.Program_options. Он будет обрабатывать все сложности анализа параметров команды для вас. Вам просто нужно указать, какие доступные параметры и какие значения они могут принимать, и т.д.

1

Одним из наиболее полезных средств для этого является парсер GNU Argp. Мало того, что он обеспечивает масштабируемую поддержку того, что вы просите, но также автоматически генерирует --help и --version (если вы его запрашиваете).

Он также автоматически запускается с GNU Libc, и для него даже существует модуль gnulib.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню