pobieranie dokładnego czasu
Ostatnio zmodyfikowano 2011-06-18 19:54
CTRL85 Temat założony przez niniejszego użytkownika |
pobieranie dokładnego czasu » 2011-06-18 16:34:48 Potrzebuję pobrać dość dokładny czas (najlepiej 1/1000 sekundy), ponieważ robię grę ćwiczącą refleks. Na razie czas pobieram czas = time (NULL); ale, to rozwiązanie nie jest dokładne, ponieważ pokazuje z dokładnością do jednej sekundy.
Szukałem w Google, ale nie było to dość jasno wytłumaczone, albo nie o takie coś mi chodziło.
pozdrawiam |
|
szyx_yankez |
» 2011-06-18 16:50:56 Funkcja clock() + CLOCKS_PER_SEC z < ctime > powinny załatwić sprawę.
Lekturka ;p |
|
yoogi |
» 2011-06-18 16:58:30 Tu masz przykład pobrania godziny: #include <windows.h> #include <iostream>
using namespace std; int main() { SYSTEMTIME SystemTime; GetSystemTime( & SystemTime ); cout << SystemTime.wHour << endl; cout << SystemTime.wMinute << endl; cout << SystemTime.wSecond << endl; cout << SystemTime.wMilliseconds << endl; cout << SystemTime.wYear << endl; cout << SystemTime.wDay << endl; cout << SystemTime.wMonth << endl; cout << SystemTime.wDayOfWeek << endl; GetLocalTime( & SystemTime ); cout << SystemTime.wHour << endl; cout << SystemTime.wMinute << endl; cout << SystemTime.wSecond << endl; cout << SystemTime.wMilliseconds << endl; cout << SystemTime.wYear << endl; cout << SystemTime.wDay << endl; cout << SystemTime.wMonth << endl; cout << SystemTime.wDayOfWeek << endl; getchar(); return 0; }
A jeśli masz zamiar pobrać dużo bardziej dokładną godzinę, to zapraszam do artykułu po niżej. Artykuł jest poświęcony innej tematyce, ale masz tam pobranie dokładniej godziny. http://xion.org.pl/productions/texts/coding/game-programming/real-time-loop/ |
|
CTRL85 Temat założony przez niniejszego użytkownika |
» 2011-06-18 18:01:02 bardzo dziękuję za udzieloną pomoc :) |
|
DejaVu |
» 2011-06-18 18:35:18 To nie jest dokładny czas. Użyj funkcji QueryPerformanceCounter. |
|
yoogi |
» 2011-06-18 18:52:54 Ta funkcja jest opisana w artykule. |
|
CTRL85 Temat założony przez niniejszego użytkownika |
» 2011-06-18 19:54:11 Nie potrzebuję bardziej dokładnego czasu :) Zrobiłem to tak: czas = clock(); cin >> zgadnieta; czy_dobrze(); while( znaki[ losowanie ] != zgadnieta ) { cout << "Niesety, zly klawisz!" << endl; cin >> zgadnieta; czy_dobrze(); } if( znaki[ losowanie ] == zgadnieta ) { czas2 = clock(); cout << "Brawo! Twoj czas to: " << difftime( czas2, czas ) / 1000 << " sekundy" << endl; getch(); }
Dodam jeszcze, żeby powtarzało np 10 razy, obliczało średnią itp |
|
« 1 » |