在C++里用string字符串变量定义了两个时刻,如 string time1="00:10",string time2="01:20",请问可以如何计算这两个时刻间的时间差?谢谢!
假设time2>time1,采用24小时计时制,两个时间间隔<24h
#include <iostream>
using namespace std;
int main()
{
string time1="00:10";
string time2="01:20";
int h1, m1;
int h2, m2;
int h, m;
sscanf(time1.c_str(), "%d:%d", &h1, &m1);
sscanf(time2.c_str(), "%d:%d", &h2, &m2);
if (m2 < m1)
{
m = m2 + 60 - m1;
h2--;
}
else
{
m = m2 - m1;
}
if (h2 < h1)
{
h = h2 + 24 - h1;
}
else
{
h = h2 - h1;
}
printf("%02d:%02d", h, m);
return 0;
}