❶ c語言的延遲函數是什麼
c語言的延遲函數一般是利用無意義程序運行來控制時間從而達到延時的目的
舉個例子:
for(i=0;i
評論
0
0
載入更多
❷ C語言延時函數
C語言的延遲函數一般是利用無意義程序運行來控制時間從而達到延時的目的
舉個例子:
for(i=0;i<x;i++)
for(j=0;j<120;j++);
這是延時x毫秒的for循環語句。
值得注意的是記得最後的;一定得記得寫。
❸ 在C語言程序中,延時函數的時間是怎麼算的
這個是和你機器的運算速度有關的
你要計算出這個函數用了多少時間就要用時間函數,我很久沒用了。
#include "stdlib.h"
void delay()
{
time_t start,end;
start=time(null);
unchar i;
while(z--)
{
for(i=0;i<121;i++);
}
end=time(null);
printf("%f",difftime(end,start));
}
//time_t是在頭文件中定義的,可能是個結構體類型裡面的成員定義了一些時間的單位,如年、月、日。在這里調用這個結構體定義2個變數;
//start=time(null);
將其中一個變數賦值。它的值等於當前的系統時間
//end=time(null);
在程序結束的時候再給另一個變數賦值,值等於當前的系統時間。
//difftime(end,start)
函數difftime();是double類型,用來計算運行的時間,用第一個參數的時間減去第二個參數的時間,得到的值就是運行用了多少時間。單位為秒
❹ C語言中用什麼函數來延時 謝謝
延遲函數,一般建議調用系統函數。不建議循環。
特別是多任務操作系統,循環會消耗系統資源。
如果是Dos,indows,linux系統建立調用 Sleep()函數。
其他系統,請自行查找。
❺ C語言中控制時間延遲的函數是什麼 用法是什麼 舉個列子 ...
在VC中,可以調用windows.h庫中的sleep函數實現延遲,但是其實沒有那個必要,一般我們用空語句的循環實現延遲,在單片機的c程序中就都是這樣實現延遲的。
比如:
void delay(int i)
{
while(i--);
}
如果你在主函數中調用
delay(1000)
那麼就能實現一個1000次指令周期的循環
因為空語句佔用的時間也是一個指令周期
希望對您的問題有所幫助哦 呵呵
❻ C語言delay延時時間怎麼算,說的詳細點謝謝
DelayMS(300)表示希望系統delay 300毫秒,系統有自己的RTC,根據硬體的晶振(Hz)可以計算出一次振盪大約多少耗時,這樣就能大約算出1ms需要多少次振盪;
簡單比喻一次振盪需要1us,那1ms就是1000次振盪,300ms就是300x1000次振盪,這樣就能大概的計算出300ms delay;
這得看你的CPU運行一條指令得多久,像單片機89C51一般一條1us。
❼ C語言delay函數延時計算
C語言delay函數延時計算源代碼如下:
#include "stdlib.h"
void delay()
{
time_t start,end;
start=time(null);
unchar i;
while(z--)
{
for(i=0;i<121;i++);
}
end=time(null);
printf("%f",difftime(end,start));
}
(7)c語言延遲時間函數擴展閱讀
1、對於要求精確延時時間更長,這時就要採用循環嵌套的方法來實現,因此,循環嵌套的方法常用於達到ms級的延時。
對於循環語句同樣可以採用for,do…while,while結構來完成,每個循環體內的變數仍然採用無符號字元變數。
❽ delay() c語言延遲函數
下面是delay
函數原型:
原型:
void
Delay(unsigned
int
nDelay)
{
unsigned
int
i,j,k;
for
(
i=0;i<nDelay;i++
)
for
(
j=0;j<6144;j++
)
k++;
}
用法:#include
<system.h>
功能:短暫延時
說明:延時msec*4毫秒所以,delay的延遲時間是和你的cpu時鍾周期相關的
❾ C語言怎麼寫延時函數,精確到毫秒
唯有Sleep函數,只有Sleep函數參數是用毫秒,比如1000毫秒等於1秒。
❿ C語言中的sleep() 函數
使用要帶上頭文件:
#include <windows.h>
Sleep函數:
功 能: 執行掛起一段時間
用 法: unsigned sleep(unsigned seconds);
注意:
1.在VC中使用帶上頭文件#include <windows.h>,在Linux下,gcc編譯器中,使用的頭文件因gcc版本的不同而不同#include <unistd.h>
2.在VC中,Sleep中的第一個英文字元為大寫的"S" ,在linux下不要大寫,在標准C中是sleep, 不要大寫,簡單的說VC用Sleep, 別的一律使用sleep。
3.在VC中,Sleep()裡面的單位,是以毫秒為單位,所以如果想讓函數滯留1秒的話,應該是Sleep(1000); 在Linux下,sleep()裡面的單位是秒,而不是毫秒。
示例:
#include<dos.h>
int main(void)
{
sound(440);
delay(500);
nosound();
return 0;
}
delay()是循環等待,該進程還在運行,佔用處理器。
sleep()不同,它會被掛起,把處理器讓給其他的進程。