我有一个用于c ++代码的核心文件,该文件在gdb中显示了std :: chrono :: steady_clock :: now()的值,如下所示:
__ d = {__r = 783605893786420}
如何将其转换为UTC?
答案 0 :(得分:2)
平台上steady_clock
的单位为纳秒。
783605893786420ns是自steady_clock
时代以来的时间。
783605893786420ns与9天,1小时40分钟和5.893786420秒的时间相同。
因此,对于该时钟,该时间段是在调用steady_clock::now()
之前的9天1小时40分钟和5.893786420秒。
将其转换为UTC的唯一方法是,如果您知道UTC与进行此调用之前的9天,1小时,40分钟和5.893786420秒之间的关系。这很可能是您的计算机最后一次启动。如果您有任何机会知道计算机启动的UTC时间,则可以在该时间加上9天,1小时40分钟和5.893786420秒,以将783605893786420转换为UTC。
将来,如果您想发现UTC时间,请改用system_clock
。