我如何确定两次之间是否有4小时的差异,以24小时格式给出?
我试过这个:
time_t timeP;
time(&timeP);
//....
time_t nowP;
time(&nowP);
if((nowP - timeP) % 4 == 0){
//...
}
还有什么更好的主意吗?
答案 0 :(得分:3)
if ((nowP - timeP) % 4 == 0)
此代码采用以模4为单位的时间差,这可能对您没有多大价值。
if ((nowP - timeP) >= 60*60*4)
这会告诉你两个时间点之间已经过了4个小时。您不应该使用==
来比较时间,以避免跳过您想要检查的时间(例如,计算机速度慢且滞后,系统时间同步并跳过一秒钟......)。