首页 > 代码库 > 时间戳与时间

时间戳与时间

时间的重要结构

struct tm{    int tm_sec;       //秒–取值区间为[0,59]    int tm_min;       //分 - 取值区间为[0,59]    int tm_hour;       //时 - 取值区间为[0,23]    int tm_mday;       //一个月中的日期 - 取值区间为[1,31]    int tm_mon;       //月份(从一月开始,0代表一月) - 取值区间为[0,11]    int tm_year;       //年份,其值从1900开始    int tm_wday;       //星期–取值区间为[0,6],其中0代表星期天,1代表星期一,以此类推    int tm_yday;       //从每年的1月1日开始的天数–取值区间为[0,365],其中0代表1月1日,1代表1月2日,以此类推    int tm_isdst;      //夏令时标识符,实行夏令时的时候,tm_isdst为正。不实行夏令时的进候,tm_isdst为0;不了解情况时,tm_isdst()为负。    long int tm_gmtoff;  //指定了日期变更线东面时区中UTC东部时区正秒数或UTC西部时区的负秒数。    const char *tm_zone;  //当前时区的名字(与环境变量TZ有关)。};

1. 日期、时间 转换为时间戳

已知:年(Year),月(Month),日(Day),时(Hour),分(Minute),秒(Second)

#include <time.h>

tm TM;TM.tm_sec = Second;//Second : [0,59]TM.tm_min = Minute;//Minute : [0,59]TM.tm_hour = Hour;//Hour : [0,23]TM.tm_mday = Day;//Day : [1,31]TM.tm_mon = Month - 1;//Month : [1,12]TM.tm_year = Year - 1900;//Year : 实际年份
//时间戳time_t time = mktime(&TM);

2. 本地时间,格林尼治时间

#include <time.h>tm *gmtTM, *localTM;time_t t = time(NULL);//当前时间戳gmtTM = gmtime(&t);//格林尼治时间localTM = localtime(&t);//本地时间

 

时间戳与时间