Неужели это было сделано только для того, чтобы не печатать одну букву?
Я не думаю, что в то время имена функций на языке C ограничивались пятью символами, как strcmp
и, unlink
вероятно, такие же старые.
Надеюсь, кто-то из причастных к этому людей сказал что-то официальное по этому поводу, но мне не удалось найти эту информацию.
Это не то же самое, что спросить: «Что имел в виду Кен Томпсон, когда сказал: «Я бы написал слово create с буквой «e»?», потому что это другой вопрос с другим ответом.
решение1
решение2
Вы, вероятно, уже это видели, и это не полный ответ на ваш вопрос, но вот отрывок из man 3 creat
:
RATIONALE The creat() function is redundant. Its services are also provided by the open() func‐ tion. It has been included primarily for historical purposes since many existing applications depend on it. It is best considered a part of the C binding rather than a function that should be provided in other languages.