在C语言中如何实现不同时区当前时间的输出

2025-01-26 22:25:32
推荐回答(2个)
回答1:

你要知道时区,才能算出那里的时间。
C语言可以算出你的当地时间和UTC(格林尼治时间),用你的计算机本身的设置。给出时区,就可推算。
中国北京时间是东八区。美国凤凰城西7区。冰岛=格林尼治时间。

下面程序计算美国凤凰城,中国北京,和冰岛时间:
#include
#include

#define MST (-7)
#define UTC (0)
#define CCT (+8)

int main ()
{
time_t rawtime;
tm * ptm;

time ( &rawtime );
ptm = gmtime ( &rawtime );
puts ("Current time around the World:");
printf ("Phoenix, AZ (U.S.) : %2d:%02d\n", (ptm->tm_hour+MST)%24, ptm->tm_min);
printf ("Reykjavik (Iceland) : %2d:%02d\n", (ptm->tm_hour+UTC)%24, ptm->tm_min);
printf ("Beijing (China) : %2d:%02d\n", (ptm->tm_hour+CCT)%24, ptm->tm_min);
return 0;
}

回答2:

这个我杂知道呀。。。。。。