現在、POSIXタイムスタンプを含むdoubleがあり、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は現在のシステム時刻のインスタンス化ではなく計算の結果であるため、これらの制限を超える結果になる可能性がかなり高いことを追加する必要があります。