我觉得非常愚蠢,因为我似乎没有得到一个简单的自然数字代表自从Ada时代的unix时代(01/01/1970 00:00:00)以来的秒数.我Ada.Calendar
上下阅读了它和它的子包,但似乎没有找到一种明智的方法来实现它,即使它Ada.Calendar.Clock
本身应该是我想要的......
我没办法.任何朝着正确方向的推动?
使用Ada.Calendar.Formatting
,构建一个Time
代表时代.
Epoch : constant Time := Formatting.Time_Of(1970, 1, 1, 0.0);
检查之间的差异Ada.Calendar.Clock
和Epoch
.
Put(Natural(Clock - Epoch)'Img);
根据此纪元显示或Unix命令检查结果date +%s
.
请参阅Ada 2005的基本原理:§7.3时间和日期以获取更多详细信息.