1》time -- 获取日历时间
日历时间:1970年1月1日距离现在的秒数
#include <time.h>
time_t time(time_t *timer): 获取当前的系统时间,并以time_t类型返回。
2》将日历时间转化为本地时间 localtime
#include <time.h>
struct tm *localtime(const time_t *timer): 将time_t类型的时间转换为本地时间,并以struct tm结构体返回。
形参:timep 日历时间 也就是time获取的结果
返回值:关于时间的结构体
struct tm {
int tm_sec; /* 秒 */
int tm_min; /* 分 */
int tm_hour; /* 时*/
int tm_mday; /*Day of the month(1-31) */
int tm_mon; /* Month (0-11) +1 */
int tm_year; /* Year - 1900+1900 */
int tm_wday; /* Day of the week (0-6, Sunday = 0) */
int tm_yday; /* Day in the year (0-365, 1 Jan = 0) */
int tm_isdst; /* Daylight saving time */
};
3》将日历时间转化为格林威治时间 gmtime
struct tm *gmtime(const time_t *timep);
形参:timep 日历时间 也就是time获取的结果
返回值:关于时间的结构体
struct tm {
int tm_sec; /* 秒 */
int tm_min; /* 分 */
int tm_hour; /* 时 和我们差8小时*/
int tm_mday; /*Day of the month(1-31) */
int tm_mon; /* Month (0-11) +1 */
int tm_year; /* Year - 1900+1900 */
int tm_wday; /* Day of the week (0-6, Sunday = 0) */
int tm_yday; /* Day in the year (0-365, 1 Jan = 0) */
int tm_isdst; /* Daylight saving time */
};
4》获取时间的字符串 ctime
char *ctime(const time_t *timep);
形参:timep 日历时间 也就是time获取的结果
返回值:关于时间的字符串
#include "stdio.h"
#include "time.h"
int main()
{// 获取当前时间time_t current = time(NULL);struct tm *p = localtime(¤t);printf("%d-%d-%d ",p->tm_year+1900,p->tm_mon+1,p->tm_mday);printf("%d:%d:%d ",p->tm_hour,p->tm_min,p->tm_sec);printf("星期%d\n",p->tm_wday);// 获取格林威治时间 gmtimestruct tm *q = gmtime(¤t);printf("%d-%d-%d ",q->tm_year+1900,q->tm_mon+1,q->tm_mday);printf("%d:%d:%d ",q->tm_hour,q->tm_min,q->tm_sec);printf("星期%d\n",q->tm_wday);//获取时间的字符串 ctimechar *w = ctime(¤t);printf("%s",w);return 0;
}