我确信这个问题在其他地方得到了回答,但我在 Google 或 SO 上找不到它,所以就这样吧。
在 C/C++ 中,我想以 dd-hh:mm:ss 提供的格式转换相对时间
ps -o etime
到一个绝对 UTC 格式的日期。
这看起来应该不是很难。假设我已经有了一个函数来生成以 struct tm 格式存储的相对时间:
struct tm *starting_rel_time = my_reltime_converstion(...);
time_t t = time(0);
struct tm *current_abs_time = localtime(&t);
我想要的基本上与difftime相反:
struct *tm starting_abs_time = current_abs_time - starting_rel_time;
现在,我可以编写自己的函数来进行转换,但由于所有的进位操作和特殊条件(闰年等),这是一场噩梦。在 C/C++ 库中肯定有办法做到这一点吗?