Альтернативное решение, которое является портативным и с более высокой точностью, доступное после C ++ 11, заключается в использовании std::chrono
.
Вот пример:
#include <iostream>
#include <chrono>
typedef std::chrono::high_resolution_clock Clock;
int main()
{
auto t1 = Clock::now();
auto t2 = Clock::now();
std::cout << "Delta t2-t1: "
<< std::chrono::duration_cast<std::chrono::nanoseconds>(t2 - t1).count()
<< " nanoseconds" << std::endl;
}
Запускэто на ideone.com дал мне:
Delta t2-t1: 282 nanoseconds