时间的类型说明
Coordinated Universal Time(UTC):世界标准时间,格林威治标注时间(Greenwich Mean Time,GMT)。
Calendar Time :日历时间。1970年1月1日0点到此时的秒数。
时间获取函数
time_t time(time_t *t);
功能描述:该函数返回从1970年1月1日00时00分00秒至今所经过的秒数。如果time_t *timer非空指针,函数也会将返回值存到timer指针指向的内存。
返回值:成功则返回秒数,失败则返回((time_t)-1)值,错误原因存于errno中。
时间转化函数
struct tm *gmtime(const time_t *timep);
功能描述:gmtime( )将参数timep指向的日历时间信息转换成以tm结构体表示的GMT时间,并保存至struct tm 结构体中。
struct tm *localtime(const time_t *timep);
功能描述:localtime( )将参数timep指向的time_t时间信息转换成以tm结构体表示的本地时区时间。
time_t mktime(struct tm *tm);
功能描述:参数tm指向的tm结构体数据转换成从1970年1月1日00时00分00秒至今的GMT时间经过的秒数。
tm结构体原型
struct tm {
int tm_sec; /* seconds */
int tm_min; /* minutes */
int tm_hour; /* hours */
int tm_mday; /* day of the month */
int tm_mon; /* month */
int tm_year; /* year */
int tm_wday; /* day of the week */
int tm_yday; /* day in the year */
int tm_isdst; /* daylight saving time 夏令时*/
};
时间显示函数
char *asctime(const struct tm *tm);
功能描述:将tm格式的时间转化为字符串形式
char *ctime(const time_t *timep);
功能描述:将日历时间转换成本地时间的字符串形式。
获取时间函数
int gettimeofday(struct timeval *tv, struct timezone *tz);
功能描述:日历时间存入timeval 结构体。当地时区星期存入 timezone 结构体。该函数常用于计算时间损耗
结构体原型
struct timeval{
time_t tv_sec; /* 秒数 */
suseconds_t tv_usec; /* 微秒 */
};
struct timezone{
int tz_minuteswest; /* 与格林威治时间相差分钟数 */
int tz_dsttime; /* 日光节约时间的状态*/
};
z_dsttime 所代表的状态如下
DST_NONE /*不使用*/
DST_USA /*美国*/
DST_AUST /*澳洲*/
DST_WET /*西欧*/
DST_MET /*中欧*/
DST_EET /*东欧*/
DST_CAN /*加拿大*/
DST_GB /*大不列颠*/
DST_RUM /*罗马尼亚*/
DST_TUR /*土耳其*/
DST_AUSTALT /*澳洲(1986年以后)*/
延迟执行函数
unsigned int sleep(unsigned int seconds);
功能描述:使程序睡眠 seconds 秒。
int usleep(useconds_t usec);
功能描述:使程序睡眠 usec 微秒。