標(biāo)題: 請教for循環(huán) [打印本頁]

作者: asusyt    時間: 2017-11-23 14:23
標(biāo)題: 請教for循環(huán)
#include <reg51.h>
sbit led=P1^0;
void delay(unsigned int i)
{
unsigned int j;
unsigned char k;
for(j=i;j>0;j--)
  for(k=125;k>0;k--);
}
void main()
{
unsigned char m;
for(m=20;m>0;m--)//m=幾決定了閃爍次數(shù)
{
  led=~led; //每隔一段時間即對輸出取反。
  delay(3000); //閃爍間隔。
}
while(1); //閃爍十次后,到此不再閃爍。
}
請問 for(j=i;j>0;j--)中的i不用賦值的嗎?數(shù)值是多少呢?

作者: hiram-peng    時間: 2017-11-23 14:50
delay(3000)相當(dāng)于把3000賦值給i
作者: ljn123123    時間: 2017-11-23 15:02
你這個是delay函數(shù),delay(1000),代表調(diào)用delay函數(shù),同時將1000賦值給i
作者: ahshmj    時間: 2017-11-23 15:15
一共循環(huán)了20次,每次循環(huán)都取反一次,隔一次亮一次,20次有10次亮,10次滅。如果m=30,亮和滅各15次。

其實這樣告訴你對你也沒太大的幫助,因為你還是需要掌握一些基礎(chǔ)知識才行。
作者: lujunda2    時間: 2017-11-23 18:03
i是形參,是要你給實參的,例如delay(3000)相當(dāng)于里面的i賦值為3000
作者: asusyt    時間: 2017-11-23 20:07
ahshmj 發(fā)表于 2017-11-23 15:15
一共循環(huán)了20次,每次循環(huán)都取反一次,隔一次亮一次,20次有10次亮,10次滅。如果m=30,亮和滅各15次。

...

剛學(xué)單片機并且基礎(chǔ)不好,好多東西不理解。謝謝
作者: le51    時間: 2017-11-23 21:28
建議著重看一下函數(shù)調(diào)用,數(shù)值是怎么傳遞的等等




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1