В настоящее время у меня есть двойник, содержащий отметку времени POSIX, и я успешно использую gmtime и asctime для отображения даты календаря через структуру time_t:
time_t input = posix;
printf("%s",asctime(gmtime(&input)));
Это работает хорошо, за исключением (очевидно) случаев, когда время POSIX выходит за пределы библиотеки time.h (т.е. 1901-2038), и в этом случае возвращается дата в 1901 году. Существуют ли какие-либо простые альтернативы gmtime/asctime/time.h , или мне просто придется работать с необработанными цифрами?
Изменить: я должен добавить, что результат, выходящий за эти пределы, довольно вероятен, поскольку posix double является результатом вычисления, а не экземпляром текущего системного времени.
time.h
, освещающему проблему 2038 года. Вы уверены, что вам нужно охватить даты более чем через 20 лет? :) - person davak   schedule 28.12.2012