涉及头文件

  • time.h
  • sys/time.h

结构体

struct timeval

  1. /* 在头文件<sys/time.h>中定义 */
  2. struct timeval {
  3. time_t tv_sec; /* 秒 */
  4. suseconds_t tv_usec; /* 微秒 */
  5. };

实际上结构体成员中的秒和微秒都是long类型。

struct timespec

  1. struct timespec {
  2. long tv_sec; /* 秒 */
  3. long tv_nsec; /* 纳秒 */
  4. };

struct tmANSI C

  1. /* 在头文件<time.h>中定义 */
  2. struct tm
  3. {
  4. int tm_sec; /* 秒. [0-60] (1 leap second) */
  5. int tm_min; /* 分钟. [0-59] */
  6. int tm_hour; /* 小时. [0-23] */
  7. int tm_mday; /* 天. [1-31] */
  8. int tm_mon; /* 月. [0-11] */
  9. int tm_year; /* 年 - 1900. */
  10. int tm_wday; /* 每周第几天. [0-6] */
  11. int tm_yday; /* 每年第几天.[0-365] */
  12. int tm_isdst; /* DST. [-1/0/1]*/
  13. ...
  14. };