C++ delay

MS VC++可以用MFC的Sleep函數,參數是毫秒。

delay函數要自己寫,編譯器裏沒有。

#include <time.h> // 頭文件

time_t start_time, cur_time; // 變量聲明

time(&start_time);
do { time(&cur_time);
} while((cur_time - start_time) < 3);

上面的 3 是 遲後 3 秒

很容易改寫成自己的delay函數:

#include <time.h>
void delay(int sec)
{
time_t start_time, cur_time; // 變量聲明
time(&start_time);
do { time(&cur_time);
} while((cur_time - start_time) < sec );
}

調用:
(void) delay(5); // 滯後5秒

短於一秒的delay可以這樣寫:
clock_t start_time, cur_time;
start_time = clock();
while((clock() - start_time) < 3.0 * CLOCKS_PER_SEC)
{
}
但有的編譯器不支持clock

推薦MS VC++ MFC的Sleep(毫秒)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章