阅读量:3
在C语言中,可以使用time.h头文件中的函数来设置时间和时区。
- 设置时间:可以使用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; }
- 设置时区:可以使用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",在不同的操作系统上可能会有所不同。