time()
是 C 語言中的一個函數,它用于獲取當前日幾時間的秒數。這個函數返回的是從 1970 年 1 月 1 日 00:00:00(UTC)到現在所經過的秒數。這個值通常被稱為 “Unix 時間戳”。
time()
函數的原型如下:
#include <time.h>
time_t time(time_t* timer);
time()
函數接受一個指向 time_t
類型的指針作為參數。如果傳入的是 NULL
,那么函數將返回當前的 Unix 時間戳;否則,它會將當前的 Unix 時間戳存儲在指針所指向的變量中,并返回該值。
下面是一個使用 time()
函數的簡單示例:
#include<stdio.h>
#include <time.h>
int main() {
time_t currentTime;
currentTime = time(NULL);
printf("當前的 Unix 時間戳是:%ld\n", (long)currentTime);
return 0;
}
要將 Unix 時間戳轉換為可讀的日期和時間格式,可以使用 localtime()
或 gmtime()
函數將其轉換為 struct tm
結構體,然后使用 strftime()
函數將其格式化為字符串。下面是一個示例:
#include<stdio.h>
#include <time.h>
int main() {
time_t currentTime;
struct tm *localTime;
currentTime = time(NULL);
localTime = localtime(¤tTime);
char formattedTime[26];
strftime(formattedTime, sizeof(formattedTime), "%Y-%m-%d %H:%M:%S", localTime);
printf("當前的日期和時間是:%s\n", formattedTime);
return 0;
}
這個示例將輸出類似于 “2022-01-01 12:34:56” 的日期和時間。