time函数 — <time.h>
含义:time 函数用于返回从标准计时点到当前时间的秒数,即从 1970 年 1 月 1 日的 UTC 时间 0 时 0 分 0 秒算起到现在所经过的秒数,注意,他是从1970年开始计时的。
原型如下:
#include <time.h>
...
time_t time(time_t *t);
time_h 类似与int char 是一个类型,它的实质其实是一个32位的整型变量。
演示:
#include <stdio.h>
#include <time.h>
int main(void)
{
time_t seconds;
// 下面语句也可以写成:time(&seconds);
seconds = time(NULL);
printf("1970年1月1日零点到现在经过了%ld个小时!\n", seconds / 3600);
return 0;
}
localtime 函数 — <time.h>
含义: localtime函数实际上是将一个 time_t 类型的值转换成具体的本地时间和日期,所以需要先使用 time 函数。
原型如下:
#include <time.h>
...
struct tm *gmtime(const time_t *timep);
localtime函数的返回值是一个指向 tm 结构体的指针。
tm 结构体包含了当地时间和日期。
tm原型如下:
struct tm
{
int tm_sec; /* 秒,范围为 0~59,60 的话表示闰秒 */
int tm_min; /* 分,范围是 0~59 */
int tm_hour; /* 时,范围是 0~23 */
int tm_mday; /* 一个月中的第几天,范围是 1~31 */
int tm_mon; /* 一年中的第几个月,范围是 0~11 */
int tm_year; /* 自 1900 年往后的第几年 */
int tm_wday; /* 星期几,自星期天开始计算,范围是 0~6 */
int tm_yday; /* 一年中的第几天,范围是 0~365 */
int tm_isdst; /* 指定日光节约时间是否生效,正数表示生效,0 表示不生效,负数表示该信息不可用 */
};