struct timeval start, end;
.
.
.
elapsedTime = (((end.tv_sec * 1000000) - (start.tv_sec * 1000000)) + (end.tv_usec - start.tv_usec));
我只是想仔细检查这个返回的时间在微秒。这是以微秒为单位的返回时间吗?
struct timeval start, end;
.
.
.
elapsedTime = (((end.tv_sec * 1000000) - (start.tv_sec * 1000000)) + (end.tv_usec - start.tv_usec));
我只是想仔细检查这个返回的时间在微秒。这是以微秒为单位的返回时间吗?
代码是正确的,但要小心溢出。这样做比较安全
(end.tv_sec - start.tv_sec) * 1000000
然后加上usec
的区别。
看起来不错给我。我假设你实际上将timeval
初始化为一些有趣的东西。
是的,它的确如此......你是1000000秒(usec秒)和增加usec的秒数。应该工作
+1感谢指责溢出..我忘了它:) – Heisenbug 2011-03-25 20:20:04
更安全,更高效。 – Clifford 2011-03-25 21:06:56