我想将此类日期today, 10.00 A.M.
转换为time_t
。最简单的方法是什么?我写了这样的代码(未经过测试):
time_t now = time(0);
struct tm tstruct;
tstruct = *localtime(&now);
tstruct.tm_hour = 10;
tstruct.tm_min = 0;
tstruct.tm_sec = 0;
time_t todayTenOClock = mktime(&tstruct);
在此,我将time_t
转换为tstruct
设置时间为10 o'时钟并转换回time_t
。你能提出比这更简单的东西吗?
答案 0 :(得分:0)
我相信你应该使用一个库或编写一个解析today
的小脚本。大多数库只执行Monday
之类的绝对表示。
此外,为了做到这一点,time_get是一个很好的起点,因为它符合标准。
另一种简单的解析方法是使用sscanf
。
int hour, min;
sscanf(buffer, "today, %2d:%2d",
&hour,
&min);