Как все программисты Perl (надеюсь) знают, значение года из вызова функции Perl localtime
относительно 1900. Интересно, почему это так, я взглянул на perldoc для localtime и обнаружил этот интересный самородок:
Все элементы списка являются числовыми и происходят прямо из C `struct tm '.
Затем, просмотрев ссылку C ++ для tm struct , я обнаружил, что переменная-член tm_year
объявлена как int
.
Вопрос: Почему же тогда значение года относится к 1900 году, а не просто к полному четырехзначному году? Есть какая-то историческая причина? Мне кажется, что даже с ранними ограничениями памяти в вычислениях, целое число (очевидно) более чем достаточно для хранения полного года. Должна была быть веская причина; Мне любопытно, что это может быть.