Узнать время между датами

269
17 февраля 2018, 22:55

Использую такую структуру и функцию для получения текущего системного времени

struct sysTimeStruct {
        int years;
        int months;
        int dayOfWeek;
        int dayNum;
        int hours;
        int minutes;
        int seconds;
    };
    void Time::sysTime(sysTimeStruct & c) {
        SYSTEMTIME sTime;
        GetLocalTime(&sTime);
        c.years = (int)sTime.wYear;
        c.months = (int)sTime.wMonth;
        c.dayOfWeek = (int)sTime.wDayOfWeek;
        c.dayNum = (int)sTime.wDay;
        c.hours = (int)sTime.wHour;
        c.minutes = (int)sTime.wMinute;
        c.seconds = (int)sTime.wSecond;
    }

А так же получаю дату с сайта в виде 2018-01-12 07-14-28, и перевожу её в другую структуру

struct upTimeStruct {
        int years;
        int months;
        int day;
        int hours;
        int minutes;
        int seconds;
    };

Мне нужно вывести на экран время, которое прошло от 2018-01-12 07-14-28, т.е. в итоге мне нужно вывести сообщение типа:

Прошло 2 дня 5 часов 12 минут 59 секунд.

Это можно сделать конвертируя обе даты в секунды, вычитать одну из другой, снова конвертировать обратно в календарное время..

Я, конечно, не эксперт, но мне кажется, что это будет работать довольно медленно. Какие есть ещё варианты?

READ ALSO
Почему не работают слоты в загруженной форме через QUiLoader?

Почему не работают слоты в загруженной форме через QUiLoader?

Не хотят работать слоты в загруженой форме через QUiLoaderВот конструктор базового класса:

251
return функции-вектора

return функции-вектора

Есть функция, которая в вектор помещает числа типа intНеобходимо, чтобы в главной части программы, задав вектор, эта функция заполняла бы его...

235
Проблема с односвязным списком

Проблема с односвязным списком

Вобщем, есть вопросикДелаю односвязный список

292