时间函数
time函数
c
time_t time(time_t* tloc);
功能:获取自1970-01-01 00:00:00 到当前的秒数
tloc:若传入非空指针,函数会把"秒数"结果写入变量中,若传入NULL函数仅返回秒数,但不写入变量。
返回值:成功返回秒数,失败返回错误码并设置errno
localtime函数
c
struct tm* localtime(const time_t* timep)
功能:将time_t的秒数转换为tm结构体
timp:秒钟变量的地址
返回值:成功返回tm结构体,失败返回NULL并设置相应的错误码
tm结构体
c
struct tm {
int tm_sec; //秒(0-60)
int tm_min; //分(0-59)
int tm_hour; //小时(0-23)
int tm_mday; //日(1-31)
int tm_mon; //月(0-11)
int tm_year; //年(Year - 1900)
int tm_wday; //星期(0-6 Sunday=0)
int tm_yday; //年中的第几天(0-365 1 Jan = 0)
int tm_isdst; //夏令时
};
实例
c
#include <time.h>
#include <stdio.h>
int main(void)
{
time_t now = time(0);
struct tm* tstruct = localtime(&now);
fprintf(stdout,"Current time:%d\n", &now);
fprintf(stdout,"%04d-%02d-%02d %02d:%02d:%02d\n",
tstruct->tm_year + 1900, tstruct->tm_mon, tstruct->tm_mday,
tstruct->tm_hour, tstruct->tm_min, tstruct->tm_sec);
return 0;
}
运行结果:
