下面是一個示例代碼,使用gettimeofday函數(shù)來測量代碼執(zhí)行時間:
#include <iostream>
#include <sys/time.h>
int main() {
struct timeval start, end;
gettimeofday(&start, NULL);
// 執(zhí)行需要測量時間的代碼
for(int i = 0; i < 1000000; i++) {
// do something
}
gettimeofday(&end, NULL);
long seconds = end.tv_sec - start.tv_sec;
long microseconds = end.tv_usec - start.tv_usec;
double elapsed = seconds + microseconds/1000000.0;
std::cout << "Time elapsed: " << elapsed << " seconds" << std::endl;
return 0;
}
這段代碼首先使用gettimeofday函數(shù)獲取開始時間,然后執(zhí)行需要測量時間的代碼,再次使用gettimeofday函數(shù)獲取結(jié)束時間。最后計算時間差,即為代碼執(zhí)行時間。