Trên hệ thống lưu time_t kiểu signed 32-bit, timestamp lớn nhất là 2147483647 ứng với 03:14:07 UTC ngày 19/01/2038. Vượt mốc này, giá trị tràn (overflow) và quấn vòng (wrap-around) về số âm — máy hiểu nhầm là năm 1901.
Cho timestamp ts (kiểu 64-bit, không tràn ở tầng đọc):
ts ≤ 2147483647: in OK <YYYY-MM-DD HH:MM:SS>.ts > 2147483647: mô phỏng tràn 32-bit có dấu, lấy giá trị sau khi quấn vòng trong khoảng [-2^31, 2^31-1], rồi in OVERFLOW <YYYY-MM-DD HH:MM:SS> của giá trị đã quấn (UTC).wrapped = ((ts + 2^31) mod 2^32) - 2^31.
2147483647 → OK 2038-01-19 03:14:07.2147483648 → quấn thành -2147483648 → OVERFLOW 1901-12-13 20:45:52.Một dòng chứa timestamp ts (số nguyên không âm 64-bit).
0 ≤ ts ≤ 4294967295.
OK <ngày giờ> hoặc OVERFLOW <ngày giờ> theo UTC.
Ví dụ:
Đầu vào:
2147483647
Đầu ra:
OK 2038-01-19 03:14:07
Giải thích:
Đang tải editor...