Рассмотрим команду Unix foo
, которая считывает файл (или stdin
) построчно, где каждая строка должна соответствовать определенному формату, например, формату /etc/passwd
.
Если какая-либо из строк неверна (но не все), должен ли статус завершения быть EXIT_SUCCESS
или EXIT_FAILURE
?
Я пытался ссылаться на стандарт,
Стандарт C11: 7.20.4.3 Функция exit
Параграф 5
Наконец, управление возвращается в хост-среду. Если значение status равно нулю или
EXIT_SUCCESS
, возвращается определенная реализацией форма успешного завершения состояния. Если значение status равноEXIT_FAILURE
, возвращается определяемая реализацией форма статуса неудачного завершения. В противном случае возвращаемый статус определяется реализацией.
Моя интерпретация вышеизложенного заключается в том, что «определяется реализацией» означает, что решение остается за реализатором. Верна ли эта интерпретация?