为什么在C中localtime()和gmtime给出相同的结果?

时间:2018-11-05 06:30:56

标签: c localtime time.h

我正在尝试编写一个以time_t作为参数并以GMT和本地时间显示日期和时间的函数。但是,gmtime()localtime()都给GMT时间。我已经尝试了几页上建议的内容,但是我仍然都使用GMT。

这是我的代码:

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

void printDateOfTime(time_t t);

int main(void)
{
    time_t now;
    now = time(NULL);
    printDateOfTime(now);
    return 0;
}

void printDateOfTime(time_t t)
{
    struct tm* gTime;
    struct tm* lTime;

    lTime = localtime(&t);
    printf("Local: %s\n", asctime(lTime));

    gTime = gmtime(&t);
    printf("GMT: %s\n", asctime(gTime));
}

我处于东部标准时区(格林尼治标准时间晚5个小时),这是我得到的输出:

Local: Mon Nov  5 06:18:57 2018

GMT: Mon Nov  5 06:18:57 2018

0 个答案:

没有答案