Sử dụng cấu trúc timeval từ <sys/time.h> để đo thời gian với độ chính xác microgiây, chuyển đổi sang mili giây.
Ví dụ mã nguồn
#include <iostream>
#include <sys/time.h>
#include <unistd.h>
using namespace std;
int main() {
timeval start, end;
gettimeofday(&start, nullptr);
cout << "Nhan phim bat ky de dung... ";
char ch; cin >> ch;
gettimeofday(&end, nullptr);
long seconds = end.tv_sec - start.tv_sec;
long useconds = end.tv_usec - start.tv_usec;
double mtime = seconds * 1000.0 + useconds / 1000.0;
cout << "Thoi gian: " << mtime << " ms\n";
return 0;
}
Đầu ra mẫu
Nhan phim bat ky de dung... h Thoi gian: 2476 ms
Lưu ý
C++11 <chrono> cung cấp cách hiện đại, đa nền tảng hơn (xem bài high-resolution timer).