我试图确定两次之间的时间差,我将其表示为无符号整数(在结构中),如下所示:
unsigned int day;
unsigned int month;
unsigned int year;
unsigned int hour;
unsigned int mins;
unsigned int seconds;
我可以很容易地计算出同一天发生的两次时间之间的时间差:这不是我的确切代码,这只是它背后的逻辑。
time1 = hours*3600 + mins*60 + seconds;
time1 = hours2*3600 + mins2*60 + seconds2;
//time2 will always be less than time1
time_diff_secs = time1_secs - time2_secs;
time_diff_mins = time_diff_secs / 60;
time_diff_secs = time_diff_secs % 60;
这会产生以下输出:
Time mayday was issued: 13 Hours 4 Mins 0 Seconds
Time mayday was recieved: 13 Hours 10 Mins 0 Seconds
Time between sending and receiving: 6.00Mins
这是正确的,但是当我有两次在不同的日子里时,我得到了这个结果:
Time mayday was issued: 23 Hours 0 Mins 0 Seconds
Time mayday was recieved: 0 Hours 39 Mins 38 Seconds
Time between sending and receiving: 71581448.00Mins
这显然是不正确的,我不知道如何从这里开始,实际结果应该是 40 分钟,而不是 7150 万。