C语言中的localtime函数用于将time_t类型的时间值转换为本地时间的表示形式。函数的原型如下:
struct tm *localtime(const time_t *time);
参数time是一个指向time_t类型的指针,指向要转换的时间值。函数返回一个指向struct tm类型的指针,其中包含了转换后的本地时间的各个成员,如年、月、日、时、分、秒等。
例如,下面的代码将当前系统时间转换为本地时间表示:
#include <stdio.h>
#include <time.h>
int main() {
time_t now;
struct tm *local;
// 获取当前系统时间
now = time(NULL);
// 将时间转换为本地时间
local = localtime(&now);
// 输出本地时间的各个成员
printf("Year: %d\n", local->tm_year + 1900);
printf("Month: %d\n", local->tm_mon + 1);
printf("Day: %d\n", local->tm_mday);
printf("Hour: %d\n", local->tm_hour);
printf("Minute: %d\n", local->tm_min);
printf("Second: %d\n", local->tm_sec);
return 0;
}
输出结果类似于:
Year: 2021
Month: 6
Day: 17
Hour: 12
Minute: 30
Second: 45
以上代码中,time(NULL)函数用于获取当前系统时间,localtime函数将时间转换为本地时间,并将转换后的本地时间的各个成员打印出来。需要注意的是,struct tm结构体中的年份是从1900年开始计数的,月份从0开始计数,所以需要进行相应的调整。