pauza? odliczanie?
Ostatnio zmodyfikowano 2012-12-19 17:55
Ivsimato Temat założony przez niniejszego użytkownika |
pauza? odliczanie? » 2012-12-19 16:46:28 chodzi mi o jakiś sposób na to aby program np. wyświetlal wiadomosc, czekal 1 sekunde i nastepna itd. czy jest na to jakis sposob? |
|
m4tx |
» 2012-12-19 16:50:13 |
|
kubawal |
» 2012-12-19 16:50:45 #include <time.h>
void Wait( unsigned int sec ) { int pocz = clock() / CLOCKS_PER_SEC; while( clock() / CLOCKS_PER_SEC < pocz + sec ); }
/edit: poprawiłem :) |
|
m4tx |
» 2012-12-19 16:52:43 Hmm @kubawal... Jeśli się nie mylę to Twój sposób da nam 100% użycia procesora :) EDIT: I nie stdlib.h tylko time.h . EDIT2: Taa... Miałem rację: #include <time.h>
void Wait( unsigned int sec ) { int pocz = clock() / CLOCKS_PER_SEC; while( clock() / CLOCKS_PER_SEC < pocz + sec ); }
int main() { Wait( 1000 ); }
m4tx2@m4tx-EP35-DS4:~/Pulpit$ g++ -Wall -o omg omg.cpp m4tx2@m4tx-EP35-DS4:~/Pulpit$ ./omg Screen: http://i.imgur.com/lI5sV.png |
|
kubawal |
» 2012-12-19 16:56:34 Hmm @kubawal... Jeśli się nie mylę to Twój sposób da nam 100% użycia procesora :) |
A znasz jakiś lepszy sposób bez używania wątków? :) |
|
m4tx |
» 2012-12-19 17:00:56 Co tu mają wątki do tego? Wszelkie sleepy nie zużywają 100% procesora. Problem pojawia się jedynie w przypadku, gdy piszemy aplikację na kilka systemów - sleep nie jest bowiem funkcją określoną w żadnym standardzie C/C++ i w zależności od systemu różnie się tego typu funkcji używa. |
|
Elaine |
» 2012-12-19 17:24:04 sleep nie jest bowiem funkcją określoną w żadnym standardzie C/C++ |
W C11 jest thrd_sleep, w C++11 jest std::this_thread::sleep_until i std::this_thread::sleep_for. |
|
m4tx |
» 2012-12-19 17:32:03 @up racja. Niemniej jednak warto pamiętać o tym, że C11 i C++11 to są stosunkowo jeszcze nowe standardy i nie są wspierane w pełni przez m.in. Visuala. Czasami może się to okazać niemalże zgubne, zwłaszcza tam, gdzie trzeba użyć starej wersji kompilatora, nawet GCC/G++. Oczywiście jeśli autor tematu pisze jakąś aplikację dla siebie to raczej nie ma żadnych przeciwwskazań żeby użyć tego, o czym napisał Iname (i zapewne będzie to najlepsze z wszelkich możliwych rozwiązań). |
|
« 1 » 2 |