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開始計數,所以需要進行相應的調整。