KEIL MDK 中localtime函数使用方法
localtime函数用于将Unix时间戳转换成本地世界协调时间(Universal Time Coordinated,UTC),gmtime函数用于将Unix时间戳转换成0时区UTC时间。
在嵌入式系统中,可能因为时区未设置,导致localtime得到的也是0时区时间,需要自己加8小时得到北京时间。
1、首先包含time.h头文件。
2、示例如下。
2 {
3 uint32_t t = unixtime + 28800; //北京时间是东8区,时间戳要加8小时
4 struct tm *t_tm;
5
6 t_tm = localtime(&t);
7 date->year = tm->tm_year + 1900;
8 date->month = tm->tm_mon + 1;
9 date->day = tm->tm_mday;
10 date->hour = tm->tm_hour;
11 date->minute = tm->tm_min;
12 date->second = tm->tm_sec;
13 }
补充:
GMT(Greenwich Mean Time)时间,又叫格林威治时间。把格林威治1970年1月1日0点0分0秒定义为时间0。当前GMT时间是指从时间0到此时经过的秒数。