C语言怎么设置时间和时区

392
2023/11/23 20:43:13
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在C语言中,可以使用time.h头文件中的函数来设置时间和时区。

  1. 设置时间:可以使用time()函数来获取当前的系统时间,然后使用localtime()函数将时间转换为结构体tm类型的本地时间,最后可以使用strftime()函数将本地时间格式化为字符串。
#include <stdio.h>
#include <time.h>

int main() {
    time_t t;
    struct tm *local_time;
    char time_str[80];

    // 获取当前系统时间
    t = time(NULL);

    // 转换为本地时间
    local_time = localtime(&t);

    // 格式化为字符串
    strftime(time_str, sizeof(time_str), "%Y-%m-%d %H:%M:%S", local_time);

    printf("当前时间:%s\n", time_str);

    return 0;
}
  1. 设置时区:可以使用tzset()函数来设置时区,时区信息保存在全局变量timezone中。
#include <stdio.h>
#include <time.h>

int main() {
    time_t t;
    struct tm *local_time;
    char time_str[80];

    // 设置时区
    setenv("TZ", "Asia/Shanghai", 1);
    tzset();

    // 获取当前系统时间
    t = time(NULL);

    // 转换为本地时间
    local_time = localtime(&t);

    // 格式化为字符串
    strftime(time_str, sizeof(time_str), "%Y-%m-%d %H:%M:%S", local_time);

    printf("当前时间:%s\n", time_str);

    return 0;
}

注意:时区的设置需要根据操作系统来确定,上面的例子是在Linux下设置的时区为"Asia/Shanghai",在不同的操作系统上可能会有所不同。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: c语言如何按顺序执行函数