简介
<time.h>
是C语言标准库中的一个头文件,提供了处理日期和时间的功能。这个头文件包含了多种类型、宏定义以及函数,可以用来获取当前时间、格式化时间输出等。
主要类型
time_t
time_t
类型用于表示从某个固定起点(通常是1970年1月1日午夜)到现在的秒数。这个类型通常用来存储时间戳。
struct tm
struct tm
是一个结构体,用于表示日期和时间。它包含了多个成员变量,分别表示年、月、日、小时、分钟、秒等。
-- -------------------- ---- ------- ------ -- - --- ------- -- ----- - - -- --- ------- -- ------ - - -- --- -------- -- ------ - - -- --- -------- -- ------------ - - -- --- ------- -- ------ - - -- --- -------- -- ------ ---- ----- --- -------- -- ----------- - - - --- -------- -- ----------- - - --- --- --------- -- ----- --
主要宏定义
CLOCKS_PER_SEC
CLOCKS_PER_SEC
宏定义了每秒的时钟计时器滴答数。这主要用于计算程序运行时间。
主要函数
time()
time()
函数用于获取当前的时间戳。
time_t time(time_t *t);
示例:
-- -------------------- ---- ------- -------- --------- -------- -------- --- ------ - ------ -- --------- --------------------- --- ------ -- -
localtime()
localtime()
函数将时间戳转换为本地时间,并返回一个指向 struct tm
的指针。
struct tm *localtime(const time_t *timep);
示例:
-- -------------------- ---- ------- -------- --------- -------- -------- --- ------ - ------ - - ----------- ------ -- ----------- - -------------- ------------------ ---------------- ------------------- - ------ ---------------- ------------------ - --- ---------------- --------------------- ----------------- --------------------- ----------------- -------------------- ---------------- -------------------- ------ -- -
gmtime()
gmtime()
函数将时间戳转换为协调世界时(UTC),并返回一个指向 struct tm
的指针。
struct tm *gmtime(const time_t *timep);
示例:
-- -------------------- ---- ------- -------- --------- -------- -------- --- ------ - ------ - - ----------- ------ -- --------- - ----------- ------------------- ---------------- ----------------- - ------ ---------------- ---------------- - --- ---------------- ------------------- ----------------- ------------------- ----------------- ------------------ ---------------- ------------------ ------ -- -
asctime()
asctime()
函数将 struct tm
结构体转换为一个字符串,表示日期和时间。
char *asctime(const struct tm *timeptr);
示例:
-- -------------------- ---- ------- -------- --------- -------- -------- --- ------ - ------ - - ----------- ------ -- ----------- - -------------- ---- --------- - -------------------- --------------------- ---------- ------ -- -
strftime()
strftime()
函数允许你自定义日期和时间的格式。
size_t strftime(char *s, size_t maxsize, const char *format, const struct tm *timeptr);
示例:
-- -------------------- ---- ------- -------- --------- -------- -------- --- ------ - ------ - - ----------- ------ -- ----------- - -------------- ---- ----------- ---------------- --------------- --------- ---------- ------------ --------------------- -------- ------ -- -
示例代码
下面是一个综合示例,展示了如何使用 <time.h>
中的各种功能。
-- -------------------- ---- ------- -------- --------- -------- -------- --- ------ - -- ------- ------ - - ----------- --------------------- --- -- ----------- ------ -- ----------- - -------------- ------------------ ---------------- ------------------- - ------ ---------------- ------------------ - --- ---------------- --------------------- ----------------- --------------------- ----------------- -------------------- ---------------- -------------------- -- ------------ ------ -- --------- - ----------- ------------------- ---------------- ----------------- - ------ ---------------- ---------------- - --- ---------------- ------------------- ----------------- ------------------- ----------------- ------------------ ---------------- ------------------ -- --------- ---- --------- - -------------------- --------------------- ---------- -- ------- ---- ----------- ---------------- --------------- --------- ---------- ------------ ------------------------ -------- ------ -- -
以上代码展示了如何使用 <time.h>
中的各个功能来处理日期和时间。希望这些内容对你有所帮助!