本帖最后由 kk8346 于 2012-10-30 22:28 编辑
初步看了一下,发现有两个地方有问题:
1、main()函数中,“if(flag == 20)”改为“if(flag >= 20)”更合理,因为前者是一个点,一旦错过,则只能等待下一次的这个点,而后者是一个面,即使错过,下一次while也会处理到。
2、main()函数中,“calculate( caltime )”这个调用本身没有问题,但是达不到预想的效果。可能本来的效果是想调用该函数之后,将时间进行相应的调整。但是这里的调用,是将参数的值传给了函数内的局部变量,在函数内的调整,无法再传给caltime。正确的做法是利用指针进行传递,可以在函数内部改变实参的值。
具体做法:函数写为calculate(time *ai),调用写为calculate(&caltime )。相应的,内部的结构体写法由ai.second变更为ai->second。
|