C 的延時函式

2021-07-27 19:58:46 字數 1429 閱讀 4313

原博文鏈結在我的官方**,**是:

在linux下,我們這樣使用:

#include 

#include

int main(void)

return

0;}

我們使用#include標頭檔案裡面的sleep()函式,給這個函式傳入的形參是以秒為單位的正整數。

上面的程式執行的效果應該是:以一秒為單位列印hello world!這個字串。

或者形參傳入以微秒為單位(1000,000微秒 =1秒)的資料:

usleep()函式的詳細介紹:這裡。

#include 

#include

int main(void)

return

0;}

c++11裡面,你可以這樣使用:

我使用的是qt5,在qt5裡面使用c++11,你需要在專案的.pro檔案裡面新增下面的這句**:

config +=c++11
如果你不在.pro檔案中新增上面的這句**,你就使用不了下面**裡面的std::this_thread

#include 

#include

#include

int main(void)

return

0;}

如果你使用了boost庫,那麼你可以使用下面的**實現延時的功能:

linux系統安裝boost庫很簡單,只需要執行:

sudo apt-get install libboost-dev
headers += /usr/include/

libs +=

-l/usr/lib/x86_64-linux

-gnu

-lboost_system

-lboost_thread

#include 

#include

int main(void)

return

0;}

或者:

boost::this_thread::sleep( boost::posix_time::seconds(1) ); //單位是秒
參考**:sleep for milliseconds

c語言延時函式的理解

for迴圈實現c語言精確延時 晶振12mhz,乙個機器週期1us.一.500ms延時子程式 程式 void delay500ms void 產生的彙編 c 0x0800 7f0f mov r7,0x0f c 0x0802 7eca mov r6,0xca c 0x0804 7d51 mov r5,0...

C 延時函式 非Sleep

在很多時候,我們的程式,在執行下一步操作之前,需要等待上一步的執行完成,這種延時等待的方式在非同步操作,或者是利用訊息迴圈機制通訊的程式中,最為體現的明顯。舉個api的例子 我們自己的程式是a,需要利用api結合windows 訊息機制,控制外部程式b a向b傳送乙個訊息,b去執行,此時a需要等待b...

C 延時函式 非Sleep

在很多時候,我們的程式,在執行下一步操作之前,需要等待上一步的執行完成,這種延時等待的方式在非同步操作,或者是利用訊息迴圈機制通訊的程式中,最為體現的明顯。舉個api的例子 我們自己的程式是a,需要利用api結合windows 訊息機制,控制外部程式b a向b傳送乙個訊息,b去執行,此時a需要等待b...