Парсинг аргументов

Модератор: Модераторы разделов

Ответить
BratSinot
Сообщения: 812
ОС: Slackware64

Парсинг аргументов

Сообщение BratSinot »

Доброго времени суток!

Имеем функцию gtopt_long которая парсит аргументы функции, можно так:

Код: Выделить всё

struct option opts[] =
{
 {"turnh", no_argument, &turnh, 1}
};

а можно

Код: Выделить всё

struct option opts[] =
{
 {"turnh", no_argument, 0, 'H'}
};

В первом случае в turnh будет 1, если аргумент попадался, а во втором случае у нас есть короткая версия "-H". Можно как-то совместить выставление turnh и короткую версию "-H", без while'а и switch'а?
Спасибо сказали:
Аватара пользователя
eddy
Сообщения: 3321
Статус: Красный глаз тролля
ОС: ArchLinux
Контактная информация:

Re: Парсинг аргументов

Сообщение eddy »

BratSinot писал(а):
25.11.2012 12:20
Можно как-то совместить выставление turnh и короткую версию "-H", без while'а и switch'а?

Нельзя. Сам таким заморачивался. Либо вариант №1, а в switch отдельным пунктом проверять 0 (если что-то нужно сделать еще с этими флагами), либо вариант №2, а флаги выставлять все в том же switch.
RTFM
-------
KOI8-R - патриотичная кодировка Изображение
Спасибо сказали:
Ответить