Tabii ki birden fazla yöntemi olan bir işlem ama sanırım C++11 sonrasında yazdığınız kodun belli bir süreliğine duraklamaya yol açmasının en kolay yolu şu:
#include <chrono>
#include <thread>
std::this_thread::sleep_for(std::chrono::milliseconds(1000));
Burada 1000 ile milisaniye parantezi aldığım kısım zamanı yazacağınız kısım. Tabii ki chrono yu kullandıktan sonra milliseconds yazan kısma seconds yazıp, parantez içine 1 yazarak da aynı sonucu elde edebilirsiniz. Milisaniye ile ilgili şu çeviriyi de bırakayım:
- 1 saniye = 1000 milisaniye
- 1 dakika = 60000 milisaniye
- 1 saat = 3600000 milisaniye
Windows kütüphanesini ekleyerek sadece sleep fonksiyonu ile de bu işlemi yapabilirsiniz:
#include "stdafx.h"
#include "iostream"
#include "windows.h"
int main(){
Sleep(1000);
return 0;
}
Ayrıca şöyle eski bir şey de var, bu da C kütüphanesinden mikrosaniye kabul eden nanosleep (usleep) fonksiyonu ile olan bir örnek:
#include <unistd.h>
unsigned int mikrosaniye = 99999;
int main(){
nanosleep(mikrosaniye);
return 0;
}
Bu arada C de bekleme fonksiyonunu kendiniz yazmak da çok zor değil aslında:
#include <iostream>
#include <ctime>
void bekle(int saniye){
std::clock_t bitti;
bitti = std::clock () + saniye * CLK_TCK;
while (std::clock() < bitti) {
}
}
int main(){
bekle(1);
return 0;
}
Ayrıca programınız duraklasın ve "devam etmek için bir tuşa basınız" ibaresi ile sizi beklesin isterseniz, main deki işlemleriniz sonuna, şunu eklemeniz yeterli:
system("pause");
return 0;