您的位置:首页 > 编程语言 > C语言/C++

如何利用C语言来获取当地时间和UTC时间? (设当地时间是北京时间)

2013-10-27 13:39 465 查看
#include  <stdio.h>
#include  <time.h>

int main()
{
time_t t = time(NULL);
tm *tp = localtime(&t);

// 北京时间
printf("%d/%d/%d\n", tp->tm_mon+1, tp->tm_mday, tp->tm_year + 1900);
printf("%d:%d:%d\n", tp->tm_hour, tp->tm_min, tp->tm_sec);

return 0;
}


#include  <stdio.h>
#include  <time.h>

int main()
{
time_t t = time(NULL);  // UTC秒数
tm *tp = localtime(&t);

// 北京时间
printf("%d/%d/%d\n", tp->tm_mon+1, tp->tm_mday, tp->tm_year + 1900);
printf("%d:%d:%d\n", tp->tm_hour, tp->tm_min, tp->tm_sec);

// UTC今天秒数
int second1 = t % (24 * 60 * 60);
printf("%d\n", second1);

// 北京时间今天秒数
int second2 = tp->tm_hour * 3600 + tp->tm_min * 60 + tp->tm_sec;
printf("%d\n", second2);

// UTC时间与北京时间相隔的小时数
printf("%d\n", (second1 - second2) / 3600); // -8

return 0;
}


#include  <time.h>
#include  <stdio.h>
#include <wtypes.h>

int main(int argc, char* argv[])
{
SYSTEMTIME stCurTime = {0};
GetSystemTime(&stCurTime); // UTC时间
printf("%d/%d/%d\n", stCurTime.wMonth, stCurTime.wDay, stCurTime.wYear);
printf("%d:%d:%d\n", stCurTime.wHour, stCurTime.wMinute, stCurTime.wSecond);

printf("----------\n");

GetLocalTime(&stCurTime);  // 北京时间
printf("%d/%d/%d\n", stCurTime.wMonth, stCurTime.wDay, stCurTime.wYear);
printf("%d:%d:%d\n", stCurTime.wHour, stCurTime.wMinute, stCurTime.wSecond);

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: