[问题] 字串转时间

楼主: xucin (vegetable)   2015-05-12 17:20:03
开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
Linux
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
问题(Question):
喂入的资料(Input):
一堆时间sring ex20130102010203 2013年01月02号01点02分03秒
预期的正确结果(Expected Output):
把时间做运算ex全部+2分钟 输出 20130102010403
错误结果(Wrong Output):
连long int都没办法放下这么大的数字
sring.h中没有可以把前面20130102去掉的函式
程式码(Code):(请善用置底文网页, 记得排版)
想不到什么逻辑可以写
补充说明(Supplement):
请问有什么方法可以达到这个目标吗?
作者: aiwhat   2015-05-12 17:32:00
long long int?
楼主: xucin (vegetable)   2015-05-12 17:39:00
没办法..
作者: MOONRAKER (㊣牛鹤鳗毛人)   2015-05-12 17:40:00
没有函式就自己写阿 C语言给你那么多字串函数够用了还是你是用"sring.h"所以找不到函数 那没办法 完蛋了
作者: EdisonX (卡卡兽)   2015-05-12 17:55:00
我的作法 , 抽出 year,month,day,hour,min,secs, 塞进
作者: kwpn (ITSST)   2015-05-12 17:56:00
先把字串转成时间单位,加2分钟,再转回字串就好了时间是指time_t, FILETIME, std::chrono::system_clock::time_point, 或boost的也有两种, 这些都是可以直接加duration的
作者: EdisonX (卡卡兽)   2015-05-12 17:58:00
struct tm, mktime 转 time_t x , x+=120 , 要再转给人看的话用 localtime ..
作者: shadow0326 (非议)   2015-05-12 18:00:00
你会用sscanf吗
作者: yvb   2015-05-12 19:14:00
strptime() => tm_min+=2 => mktime() => strftime()mktime()/timelocal()/timegm() 可以处理日期时间进位问题.而且可以都只看 struct tm, 不用管 time_t 的部分.

Links booklink

Contact Us: admin [ a t ] ucptt.com