常量指针/结构

时间:2009-11-09 19:36:19

标签: pointers struct constants

在我的编程课中,我们有

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 个答案:

答案 0 :(得分:3)

你所描述的方式听起来完全正确。我可能会做类似

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

然后类似于t2,然后从另一个中减去一个并将结果分解为几分钟和几小时。