我想在C ++中创建时间数据类型。要计算日期,我们可以使用 julian数字。是否有任何特定的数字来计算时间
答案 0 :(得分:2)
大多数程序使用"非闰秒,因为epoc"当他们需要一个数字来表示绝对日期/时间时。 epoc可以是任何东西,但1970年1月1日午夜UTC很常见,因为很多操作系统都使用它。如果您使用32位有符号类型,则可以使用+/- 68年。 64位类型很容易涵盖宇宙的时代。
出于一些目的(例如GPS和天文学)"非闰秒"不够好,你需要实际的时间过去。
您还可以获得该主题的变体,例如Java标准库将您从epoc开始推向非飞跃毫秒,因为System.currentTimeMillis()
返回的是{{1}}。这只适用于32位类型大约一个月,这就是为什么比Java更老的环境并不总是接受它。
答案 1 :(得分:0)
不确定,但也许您可以查看struct tm
: