Постоянный указатель / структуры - PullRequest
0 голосов
/ 09 ноября 2009

В моем классе программирования у нас есть

struct Time {
    int hours, min, sec;
}

Мы должны создать метод для вычисления разницы между двумя значениями:

Time *timeDiff(const Time *t1, const Time *t2)

Я думал, что смогу создать разницу во времени, получив все в секундах, а затем вычтя два значения, но это похоже на дополнительную работу, чтобы сделать что-то вроде

long hour1 = t1->hours;
long min1 = t1->min;
long sec1 = t1->sec;

И затем, используя эти значения, чтобы получить время в секундах, сделайте нечто подобное во второй раз, а затем вычтите. Какие-нибудь мысли? Спасибо!

1 Ответ

3 голосов
/ 09 ноября 2009

То, как вы это описали, звучит совершенно правильно. Я мог бы сделать что-то вроде

int sec = t1->sec + 60*(t1->min + 60*t1->hours);

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

...