有没有ctime()函数的逆函数
发布网友
发布时间:2022-12-15 13:55
我来回答
共1个回答
热心网友
时间:2023-09-19 05:21
你可以用localtime和mktime这两个相逆的实现.
ctime虽然可以将秒数转换为字符串,但字符串格式是固定的.
localtime函数将秒数转换为年月日,时分秒的值, 变成这样的结构体:
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日 */
int tm_isdst; /* 夏令时标识符,夏令时tm_isdst为正;不实行夏令时tm_isdst为0 */
};
至于怎么输出格式,你完全可以用printf来格式化了, 这个结构体可以用mktime函数作相逆.