Форум программистов, компьютерный форум CyberForum.ru

Таймеры - C++

Восстановить пароль Регистрация
 
Ataman
 Аватар для Ataman
1 / 1 / 1
Регистрация: 27.10.2011
Сообщений: 33
27.07.2012, 17:40     Таймеры #1
Здравствуйте, скажите какие есть готовые таймеры? Пользовался поиском, нашел только winapi и простую библиотеку time.h, только почему то используя функцию clock() у меня выводится результат = 0 . . Rdtsc - выводит точный результат совершенных тактов?


C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <time.h>
#include <intrin.h>
#pragma intrinsic(__rdtsc)
 
unsigned __int64 rdtsc(){
    return __rdtsc();
}
 
unsigned __int64 r0=rdtsc(), r1;
float t0=(float)clock();
 
//алгоритм..........
 
float t1=(float)clock();
r1=rdtsc();
 
cout << "algorithm execution time: " << (float)((t1-t0)/CLOCKS_PER_SEC) << " sec" <<endl;
cout << "algorithm execution time: " << r1-r0 << " tacts" <<endl;
программа целиком
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.07.2012, 17:40     Таймеры
Посмотрите здесь:

Visual C++ таймеры
Таймеры не работают C++
Delphi Таймеры
Таймеры.Не срабатывает сравнение C++
Высокоточные таймеры C Linux
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Leomana
58 / 58 / 5
Регистрация: 29.06.2012
Сообщений: 188
27.07.2012, 17:50     Таймеры #2
все правильно.. просто код выполняется меньше чем за секунду
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
27.07.2012, 18:05     Таймеры #3
Leomana, но тогда бы была дробная секунда, ведь тип float
Leomana
58 / 58 / 5
Регистрация: 29.06.2012
Сообщений: 188
27.07.2012, 18:21     Таймеры #4
float бывает врет)) ну значит она ооочень быстро выполянется))
проверьте этот код и станет понятно)
C++
1
2
3
4
5
6
7
8
float t0=(float)clock();
 
    _getch();
    float t1=(float)clock();
 
 
    cout << "algorithm execution time: " << (float)((t1-t0)/CLOCKS_PER_SEC) << " sec" <<endl;
    _getch();
Yandex
Объявления
27.07.2012, 18:21     Таймеры
Ответ Создать тему
Опции темы

Текущее время: 14:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru