localtime
函数 <ctime>
struct tm * localtime (const time_t * timer);
将time_t转换为tm作为当地时间
使用timer所指向的值来填充tm结构,这些值表示本地时区对应的时间。
☲ 参数
timer
指向包含时间值的time_t类型对象的指针。
time_t是基本算术类型的别名,能够表示由函数time返回的时间。
☉ 返回值
一个指向tm结构的指针,其成员中填充了与timer的本地时间表示相对应的值。
返回值指向一个内部对象,该对象的有效性或值可能会被随后调用
gmtime或localtime所更改。
☣ 示例
/* localtime example */
#include <stdio.h> /* puts, printf */
#include <time.h> /* time_t, struct tm, time, localtime */
int main ()
{
time_t rawtime;
struct tm * timeinfo;
time (&rawtime);
timeinfo = localtime (&rawtime);
printf ("Current local time and date: %s", asctime(timeinfo));
return 0;
} |
输出:
Current local time and date: Wed Feb 13 17:17:11 2013
↭ 数据竞争
函数访问timer指向的对象。
该函数还访问和修改一个共享的内部对象,
这可能会在对
gmtime和localtime的并发调用中引入数据竞争。
一些库提供了避免这种数据竞争的替代函数:localtime_r (不可移植)。
❆ 异常(c++)
无抛出保证:此函数从不抛出异常。
🍄 另请参阅
asctime |
转换tm结构为字符串(function ) |
mktime |
将tm结构转换为time_t(function) |
gmtime |
将time_t转换为tm作为UTC时间(function) |
ctime |
将time_t值转换为字符串(function) |