tm是C语言中定义时间的结构体,下面是详细的定义:

Code
struct tm
{
  int tm_sec;           /* Seconds. [0-60] (1 leap second) */
  int tm_min;           /* Minutes. [0-59] */
  int tm_hour;          /* Hours.   [0-23] */
  int tm_mday;          /* Day.     [1-31] */
  int tm_mon;           /* Month.   [0-11] */
  int tm_year;          /* Year - 1900.  */
  int tm_wday;          /* Day of week. [0-6] */
  int tm_yday;          /* Days in year.[0-365] */
  int tm_isdst;         /* DST.     [-1/0/1]*/
#ifdef  __USE_BSD
  long int tm_gmtoff;       /* Seconds east of UTC.  */
  __const char *tm_zone;    /* Timezone abbreviation.  */
#else
  long int __tm_gmtoff;     /* Seconds east of UTC.  */
  __const char *__tm_zone;  /* Timezone abbreviation.  */
#endif
}; 有两个函数是基于这个结构体的,
struct tm *localtime(const time_t *timep);
 struct tm *gmtime(const time_t *timep);
    time_t timep;
    struct tm *p1, *p2;
    time(&timep);
    p1=localtime(&timep);  /* 获取当前时间 */
    p2=gmtime(&timep); //GMT时间
  其中,time_t类型是按照标准时间(1900/1/1 0:0:0)计算经过的秒数。函数localtime是把time_t转换成当地时间的tm,而gmtime是转换成格林威治(GMT)时间的函数。
  函数time的原型是time time(time *calptr);时间值作为函数值返回。如果参数是非null,则时间值也存放在由calptr指向的单元内。
关于时间函数可以参照这篇:http://www.yesky.com/27/76527.shtml