Argp
С раздел документации "Флаги Аргп" :
ARGP_NO_ERRS
Не печатать сообщения об ошибках для неизвестных опций в stderr ; если это
установлен флаг, ARGP_PARSE_ARGV0
игнорируется, так как argv[0]
используется в качестве
Название программы в сообщениях об ошибках. Этот флаг подразумевает ARGP_NO_EXIT
.
Это основано на предположении, что тихий выход из ошибок плох
поведение.
Getopt
Для getopt
(а также getopt_long
и getopt_long_only
) вы просто устанавливаете глобальную переменную opterr
в 0 перед вызовом функции. В качестве альтернативы, вы можете использовать короткую строку параметров с начальным символом :
, как в ":o:v"
, для обработки -o output-file
и -v
(:
будет возвращено, если в -o
отсутствует аргумент, и ?
, если найден любой параметр, который не существует в строке параметров).