Почему возвращаемое по умолчанию значение main равно 0, а не EXIT_SUCCESS?

Стандарт ISO 1998 c ++ указывает, что неявное использование оператора возврата в основном эквивалентно использованиюreturn 0. But what if an implementation has a different standard "no error" code, for example -1?

Почему бы не использовать стандартный макросEXIT_SUCCESS это будет заменено либо0 или же-1 или любое другое значение в зависимости от реализации?

C ++, кажется, усиливает семантику программы, а не роль языка, который должен только описывать поведение программы. Более того, ситуация с «ошибкой» иная. возвращаемое значение: толькоEXIT_FAILURE является стандартной «ошибкой» флаг завершения, без явного значения, такого как "1" например.

Каковы причины этого выбора?

Ответы на вопрос(9)

Ваш ответ на вопрос