Нет точного правила использовать одинарный или двойной тире в качестве опции для программы. Если кто-то решил работать с опциями самостоятельно, он может реализовать все, что захочет.
Но если программист не ищет PITA и хочет, чтобы программа использовала общий, хорошо узнаваемый способ, то можно было бы использовать стандартные функции getopt/getopt_long
которые обрабатывают длинные параметры (длинная строка, как вы просили), как двойные пунктирные короткие параметры. (один символ) с префиксом с одной чертой. Функция getopt
является частью <unistd.h>
на языке Си. Эту же функцию можно использовать в системах на основе Unix в стандартных оболочках man getopt 1
которые используют параметры синтаксического анализа с одинарной и двойной штриховой (длинной) опцией.
Существует ли максимальное количество символов, которое может иметь флаг с одним тире, прежде чем он потребует двух тире?
Если кто-то использует функцию, описанную выше, короткие варианты могут иметь только один единственный символ.