我想用 while 循环测量计算时间。
我正在使用 C99 版本进行编程。
我的代码如下:
struct timeval startingTime,endingTime;
gettimeofday(&startingTime, NULL);
while(read(fd,&student,206) != 0){
printf("%s\n",student);
}
gettimeofday(&endingTime, NULL);
long elapsed = endingTime.tv_usec-startingTime.tv_usec;
printf("Computing Time : %ld\n",elapsed);
printf("ending : %d , starting %d",endingTime.tv_usec,startingTime.tv_usec);
然后结果如下:
计算时间:-76716
结束 : 334481 , 开始 411197
如您所见,开始比结束更大...
我无法完全理解我错过了什么......
有没有人知道这种情况?