c語言sleep的用法
在C語言的教學當中,利用Sleep()等函數通過更加直觀的顯示效果,來使循環嵌套的層次更加清晰,break和continue等作用更加直觀;通過硬件思維中的內存結構可以使初學者對指針有一個最根本也是最直接的認識,從而學生無論是對指針的認知還是使用,都將變得非常容易。 下面小編就跟大家介紹下c語言sleep的用法。 Sleep函數: 功 能: 執行掛起一段時間 用 法: unsigned sleep(unsigned seconds); 注意: 在VC中使用帶上頭文件#include <Windows.h>,在Linux下,gcc編譯器中,使用的頭文件因gcc版本的不同而不同#include <unistd.h> 在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()不同,它會被掛起,把處理器讓給其他的進程。