首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

localtime mktime 相关的有关问题

2012-04-10 
localtimemktime 相关的问题!根据需要我要求出某天零时自1970年一月一日的秒数 加上86399秒得到该天结束时

localtime mktime 相关的问题!
根据需要我要求出某天零时自1970年一月一日的秒数 加上86399秒得到该天结束时秒数 我方法是先用time()求得秒数,然后转换为struct tm对象,之后我把对象的tm_hour tm_min tm_sec设置为0用mktime()函数计算该天零时从1970年一月一日的秒数 可我发现一个问题 这个秒数startTime为啥不是86400(一天的秒数)的整数倍呢?求解

C/C++ code
    time_t nowTime;    struct tm * timeinfo;    time ( &nowTime );    timeinfo = localtime ( &nowTime );    timeinfo->tm_hour=0;    timeinfo->tm_min=0;    timeinfo->tm_sec=0;    time_t startTime=mktime(timeinfo);    timeinfo->tm_hour=23;    timeinfo->tm_min=59;    timeinfo->tm_sec=59;    time_t endTime=mktime(timeinfo);



[解决办法]
msdn
[解决办法]
理清楚思路,看中间计算有没有错误。
[解决办法]
我又看了一下你的代码。

原来你调time+localtime只是为了获得一个填写好的tm结构体,那你不必在乎我楼上说的,我运行后显示:
86399,没有什么问题。
[解决办法]
time()取得的是GMT,localtime是北京时间,你将结果减去8*3600就能整除了

热点排行