首頁  >  文章  >  後端開發  >  帶你了解C語言中的Sleep函數(附程式碼)

帶你了解C語言中的Sleep函數(附程式碼)

烟雨青岚
烟雨青岚轉載
2020-07-08 11:25:225803瀏覽

帶你了解C語言中的Sleep函數(附程式碼)

Sleep函數:

#功能:執行掛起一段時間

#用法:

unsigned sleep(unsigned seconds);  

注意:  

在VC中使用帶頭檔#include abf42a29c589d8b0c4a13904441a279e,在Linux下,gcc編譯器中,使用的頭檔因gcc版本的不同而不同# include f55648144b4a1c5cce7ad2f6519be0f3 

在VC中,Sleep中的第一個英文字符為大寫的"S" ,在linux下不要大寫,在標準C中是sleep, 不要大寫,簡單的說VC用Sleep, 別的一律使用sleep

在VC中,Sleep()裡面的單位,是以毫秒為單位,所以如果想讓函數滯留1秒的話,應該是Sleep(1000);在Linux下,sleep()裡面的單位是秒,而不是毫秒。

範例:

#include <windows.h>  
int main() {  
  int a;  
  a=1000;  
  Sleep(a);  
  return 0;  
} 

usleep函數:

#功能: usleep功能把進程掛起一段時間, 單位是微秒us(百萬分之一秒)。

語法:

void usleep(int micro_seconds);

傳回值: 無

#注意:這個函數不能工作在 Windows 作業系統中。

usleep() 與sleep()類似,用於延遲掛起進程。進程被掛起放到reday queue。只是一般情況下,延遲時間數量級是秒的時候,盡可能使用sleep()函數。且此函數已廢除,可使用nanosleep。 

如果延遲時間為幾十毫秒,或更小,盡可能使用usleep()函數。這樣才能最佳的利用CPU時間。

delay函數: 

功能: 將程式的執行暫停一段時間,單位是毫秒ms(千分之一秒)  

#用法:

void delay(unsigned milliseconds);  

範例:  

#include<dos.h>  
int main(void)  {  
    sound(440);  
    delay(500);   
    nosound();  
    return 0;  
}

delay()是循環等待,該進程還在運行,佔用處理器。

sleep()不同,它會被掛起,把處理器讓給其他的進程。

感謝大家的閱讀,希望大家收益多多。

本文轉自:https://blog.csdn.net/u011630575/article/details/45567599

推薦教學:《C語言

以上是帶你了解C語言中的Sleep函數(附程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除