阅读量:0
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” 的日期和时间。