Каков самый точный способ расчета прошедшего времени на C++? Я использовал clock(), чтобы вычислить это, но у меня такое чувство, что это неправильно, так как я получаю 0 мс 90% времени и 15 мс остальное, что не имеет для меня никакого смысла.Счетчик времени выполнения программы
Даже если он действительно маленький и очень близко к 0 мс, существует ли более точный метод, который даст мне точное значение, а не округленное значение 0 мс?
clock_t tic = clock();
/*
main programme body
*/
clock_t toc = clock();
double time = (double)(toc-tic);
cout << "\nTime taken: " << (1000*(time/CLOCKS_PER_SEC)) << " (ms)";
Благодаря
Вы должны добавить операционную систему, на которой ваш код работает, как выше таймеры разрешения в основном зависимые от ОС.Если вы используете C++ 11, вы должны подумать над заголовком, который обеспечивает таймеры с более высоким разрешением и обертывает зависимости ОС. \ –
ogni42
Chrono также использует счетчик rdtsc? –
Я запускаю XP 32 бит – user2550888