This question already has an answer here:

The Bitcoin protocol currently uses uint32_t to record timestamps. While the year 2106 is still a long way off, I'm wondering why not just go with int64_t and be done with it?

marked as duplicate by Murch, John T, Salvador Dali, Greg Hewgill, Steven Roose Feb 19 '14 at 14:40

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.