我想知道如果两个平台上的时区设置相同,localtime
在不同平台上的工作方式是否不同。如果是这样,除了时区之外,还有哪些相关参数?
我在 2 个平台上运行它:
#include <stdio.h>
#include <time.h>
#include <unistd.h>
int main()
{
time_t t,t1;//,result;
double d1;
struct tm *tm;
t1 = 1384496356;
tm = localtime(&t1);
printf("tm->tm_hour %d tm->tm_min %dn",tm->tm_hour,tm->tm_min);
return 0;
}
输出 tm->tm_mday 15 tm->tm_hour 11 tm->tm_min 33
和 tm->tm_mday 15 tm->tm_hour 6 tm->tm_min 3
硬件时钟和时区定义本地时间。
代码中的 t1 是自 00:00:00 UTC, 1970-01-01 以来的时间(以秒为单位)。 如果您在不同的计算机上获得不同的时间,则意味着这些计算机上的实时时钟不会同步,假设它们配置为位于相同的时区。