在这段代码中使用 GDateTime 而不是 localtime_r 有什么好处:
char time_str[100];
time_t t;
struct tm lt;
t = time(NULL);
localtime_r(&t, <);
strftime(time_str, 100, _("%Y%m%d-%H%M%S"), <);
GDateTime 似乎是 Gnome 库 (GLib) 的一个组件。如 GLib 中所述,GDateTime 是一种用于处理日期/时间数据的结构(和一组方法),能够表示(以微秒精度)从0001-01-01 00:00:00
到 的任何日期/时间9999-12-31 23:59:59.999999
。
因此,如果(a) 您已经在使用 GLib(或者愿意为这件事引入整个 GLib 库),并且(b) 您需要或使用由GDateTime,然后,使用 GDateTime 而不是 localtime_r 的优点是您可以增加 GDateTime 提供的范围和/或精度。