对于c的时间函数,又能知道多少呢? 时间函数解析 ftime() 获取当前时间,并将其保存在结构体timeb中localtime() 将time_t转换成结构体tm#include <stdio.h>#include <time.h>#include <sys/timeb.h>int main(){ struct timeb tp; struct tm *tm; ftime(&tp); tm = localtime(&( tp.time )); printf("%02d:%02d:%02d:%03d\n", (tm->tm_hour), (tm->tm_min), (tm->tm_sec), (tp.millitm ));timeb--------------------------------------------struct timeb{ time_t time; unsigned short millitm; short timezonel; short dstflag;};timeb.time 为1970-01-01至今的秒数timeb.millitm 微秒timeb.timezonel 为目前时区和Greenwich相差的时间,单位为分钟timeb.dstflag 为日光节约时间的修正状态,如果为非0代表启用日光节约时间修正ftime() --------------------------------------------int ftime(struct timeb *tp); Return current date and time in tp 返回值 :无论成功或失败都返回0tm--------------------------------------------Broken-down time is stored in the structure tm which is defined in <time.h> as follows:struct tm { int tm_sec; int tm_min; int tm_hour; int tm_mday; int tm_mon; int tm_year; int tm_wday; int tm_yday; int tm_isdst; };tm_sec 秒 –- 取值区间为[0,59]tm_min 分 -- 取值区间为[0,59]tm_hour 时 -- 取值区间为[0,23]tm_mday 日 -- 取值区间为[1,31]tm_mon 月 -- 取值区间为[0,11] (0代表一月)tm_year 年 -- 其值为实际年份减去1900tm_wday 星期 –- 取值区间为[0,6] (其中0代表星期天; 1代表星期一)tm_yday 从每年的1月1日开始的天数 – 取值区间为[0,365],其中0代表1月1日,1代表1月2日tm_isdst 夏令时标识符,实行夏令时的时候,tm_isdst为正。不实行夏令时的进候,tm_isdst为0;不了解情况时,tm_isdst()为负。localtime()-------------------------------------------- asctime, ctime, gmtime, localtime, mktime, asctime_r, ctime_r, gmtime_r, localtime_r ---- transform date and time to broken-down time or ASCIIstruct tm *localtime(const time_t *timep);

评论