linux函数代码操练---linux环境-----时间和日期
基础知识
与时间有关的函数
头文件#include<time.h>
①time_t time(time_t *tloc);
返回计算机纪元至今的秒数并且将值存入tloc
②double difftime(time_t time1,time_t time2);
③struct tm* gmtime(const time_t timeval);
④struct tm* localtime(const time_t *timeval);
⑤time_t mktime(struct tm* timeptr);
⑥char* asctime(const struct tm* timeptr);
⑦char* ctime(const time_t timeval);
⑧size_t strftime(char* s,size_t maxsize,const char* format,struct tm* timeptr);
⑨char* strptime(const char* buf,const char* format,struct tm* timeptr);
实验
一.time_t time(time_t *tloc);
程序截图
运行结果
说明:
函数返回一个人眼难以识别的时间,以秒为单位。
二.②double difftime(time_t time1,time_t time2);
程序截图
运行结果
说明
注意计算结果是time1-time2的值,小心顺序。
三.struct tm* gmtime(const time_t timeval);
程序截图
运行结果
说明
该函数讲以秒为单位的时间解释为符合人类习惯的时间格式并且存放在结构体中。这个结构体的成员有。
tm_year 相对于1900年的年份
tm_mon 月份。注意这个月份是从0开始取的,真正的月份要加一。
tm_mday 一个月中的第几天
tm_yday 一年中的第几天
tm_hour 小时
tm_min 分钟
tm_sec 秒
这个时间似乎是不对的,因为得到的世界时,并不是当地时间。
四.struct tm* localtime(const time_t *timeval);
程序截图
运行结果
说明
这个得到的就是自己所在时区的真正时间。
五.time_t mktime(struct tm* timeptr);
程序截图
运行结果
说明
将结构体struct tm 转换成time_t
六.char* asctime(const struct tm* timeptr);
程序截图
运行结果
说明
将结构体中的时间信息转换成字符串信息并返回,注意该字符串末尾会补充换行符。
七.char* ctime(const time_t timeval);
该程序与上一个函数类似,将time_t中的时间信息转换成字符串信息并返回。
八.size_t strftime(char* s,size_t maxsize,const char* format,struct tm* timeptr);
程序截图
运行结果
说明
以某种格式的将结构体中保存的时间信息保存在字符串中,并在结尾加上换行。
九.char* strptime(const char* buf,const char* format,struct tm* timeptr);
功能与用法与前一个函数类似。