esiste una fuinzione che ferma il programma per il numero di sencondi che vuoi te????![]()
grazie![]()
esiste una fuinzione che ferma il programma per il numero di sencondi che vuoi te????![]()
grazie![]()
dovrebbe essere la funzione Sleep(ritardo)
dentro le tonde metti un int che corrisponde ai millisecondi credo
ad esempio 1000 corrisponde ad un secondo
metti anche #include<windows.h>(se usi windows)
qui hai un tip su come creare quello che ti serve in ANSI C++: http://www.pierotofy.it/pages/appunt...NSI_CPlusPlus/
![]()
Imparare è un'esperienza, tutto il resto è solo informazione. (Albert Einstein)
provati entrabi, allora: il migliore è risultato Sleep() nn solo xche come codice è piu corto ma anche xche questo
codice:#include <ctime> //nuovo time.h #include <iostream> // nuovo I/O #include <string>// nuovo string.h che contiene la classe string using namespace std;// specifica che verrà usato il namespace detto std(standar) //ecco la funzione: void aspetta(long m)// m = secondi da aspettare { time_t adesso = time(NULL); //prendi l'ora di adesso while(difftime(time(NULL), adesso) < m); //finchè non sono passati "m" secondi da "adesso"(ovvero l'inizo della funzione) //ripeti il while //se sono passati esce dal while e la funzione termina qui } //------------- int main() { string str("Testo di prova");//oggetto stringa for(register int i = 0; i < str.size(); i++) { cout << str[i]; aspetta(1);//aspetta 1 secondo } cout << endl;//quando la stringa è stata stampata tutta vai a capo. return 0;//terminato con successo }
consuma una parte del lavoro del processore mentre stoppa il programma, metre sleep() fa tutto pulito!!!!![]()
bhe sleep è una funzione già creata mentre quell'altra suggerita sfrutta le funzioni note.....
si quell'altra spreca potenza di calcolo x ritardare il rpogramma.. mettiamola cosìOriginariamente inviato da pablo1986
bhe sleep è una funzione già creata mentre quell'altra suggerita sfrutta le funzioni note.....![]()
La differenza sostanziale tra i due metodi e' che la Sleep opera a livello di sistema operativo in relazione alla schedulazione del thread (che viene sospeso) mentre l'altro *non sospende* il thread.
Il vantaggio di sospendere il thread e' quello di ottenere che la CPU non sia impegnata, lo svantaggio e' quello di sospendere per il periodo impostato la gestione dei messaggi provenienti dal sistema (e questo puo' dare l'impressione che il processo sia "bloccato" e non risponda).
Quindi, per periodi brevi la Sleep puo' andare bene ma per periodi piu' lunghi e' meglio non usarlo ...
La soluzione migliore e' usare il ciclo in modo che i messaggi vengano processati introducendo al suo interno uno sleep molto piccolo (tra 20 e 50 millisecondi) in modo che la CPU non sia impegnata molto impegnata.