time输出时间和日期(time,localtime)
涉及到到函数有time, localtime, 其中time是获取从1900年1月1日0点开始至现在经过的秒数, localtime将该秒数转换为对应的年月日等信息并装添到tm类型的结构体中;
直接展示例程:
#include <stdio.h>
#include <time.h> //time
int main()
{
char * wday[7] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Staurday"};
time_t t; //time函数的参数要求为time_t类型
struct tm * ptm; //接受经localtime转换后时间信息的结构体
time(&t); //将秒数装填进t
ptm = localtime(&t); //将t分解为具体时间
printf("LocalTime: %d:%d:%d, %s, %d-%d-%d\n",
ptm->tm_hour, ptm->tm_min, ptm->tm_sec, wday[ptm->tm_wday],
ptm->tm_year + 1900, ptm->tm_mon, ptm->tm_mday);
return 0;
}
运行结果:
LocalTime: 14:2:36, Sunday, 2020-7-16
其中tm结构体信息为:
struct tm
{
int tm_sec; // seconds after the minute - [0, 60] including leap second
int tm_min; // minutes after the hour - [0, 59]
int tm_hour; // hours since midnight - [0, 23]
int tm_mday; // day of the month - [1, 31]
int tm_mon; // months since January - [0, 11]
int tm_year; // years since 1900
int tm_wday; // days since Sunday - [0, 6]
int tm_yday; // days since January 1 - [0, 365]
int tm_isdst; // daylight savings time flag
};