localtime和gmtime函数的区别

本文介绍了C/C++中的time_t时间戳与localtime和gmtime函数。time_t time(time_t *seconds)返回自1970年1月1日以来的秒数。localtime将时间戳转换为本地时间,而gmtime转换为UTC时间。需要注意的是,localtime不是线程安全的,推荐使用localtime_r。此外,还提及了获取毫秒级精度时间的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C库函数time_t time(time_t *seconds)返回自纪元(00:00:00 UTC,1970年1月1日)以来的时间,单位为秒。如果second不是NULL,则返回值也存储在变量second中。

time_t time(time_t *t)

C库函数tm *localtime(const time_t *timer)使用timer所指向的时间,用代表相应本地时间的值填充tm结构。timer的值被分解到结构tm中,并以当地时区表示。

Localtime不是线程安全的,程序中一般使用localtime_r

struct tm *localtime(const time_t *timep);
struct tm *localtime_r(const time_t *timep, struct tm *result);
struct tm {
   int tm_sec;         /* seconds,  range 0 to 59          */
   int tm_min;         /* minutes, range 0 to 59           */
   int tm_hour;        /* hours, range 0 to 23             */
   int tm_mday;        /* day of the month, range 1 to 31  */
   int tm_mon;         /* month, range 0 to 11             */
   int tm_year;        /* The number of years since 1900   */
   int tm_wday;        /* day of the week, range 0 to 6    */
   int tm_yday;        /
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值