当您通过这种结构获得时间时:http ://www.cplusplus.com/reference/ctime/tm/
可以看到值(例如,tm_sec, tm_min
)都是int
. 问题是我想将这些存储int
在某个地方。但我想使用int32_t
type 而不是int
,所以大小是固定的。对此我能做些什么吗?
user2793162
问问题
144 次
1 回答
3
C++struct tm
从 C 中获取类型。根据 C 标准,这些元素struct tm
具有一定的范围:
C99 §7.23.1 时间的组成部分
该
tm
结构应至少包含以下成员,按任意顺序排列。成员的语义及其正常范围在注释中表达。int tm_sec; //seconds after the minute — [0, 60] int tm_min; //minutes after the hour — [0, 59] int tm_hour; //hours since midnight — [0, 23] int tm_mday; //day of the month — [1, 31] int tm_mon; //months since January — [0, 11] int tm_year; //years since 1900 int tm_wday; //days since Sunday — [0, 6] int tm_yday; //days since January 1 — [0, 365] int tm_isdst; // Daylight Saving Time flag
这些值可以安全地转换为int32_t
.
于 2013-09-24T12:46:35.653 回答