微控制器for什麼意思,微控制器c語言中,for 是什麼意思

時間 2022-10-14 08:15:56

1樓:匿名使用者

死迴圈,一般用於等待中斷。

for語句的一般形式如下:

for(表示式1; 表示式2; 表示式3)(需要執行的語句);

其執行過程是:表示式1首先執行且只執行一次;然後執行表示式2,通常都是乙個用於判定條件的表示式,如果表示式2條件成立,就執行(需要執行的語句);然後再執行表示式3;再判斷表示式2,再執行表示式3.....一直到表示式2不成立時,跳出迴圈往下執行。

2樓:

我之前也看過這個問題, 其實就是死迴圈.

while(1) == for(;;) , 效果一樣的.

我聽過最合理的解釋就是習慣問題. 國內習慣while(1), 老外習慣for(;;)

3樓:啟巖

void main()

}for(;;)是構成乙個死迴圈,讓程式一直在裡面執行。如果沒有的話微控制器main函式執行完後又會從主函式開始執行,比如初始化會再一次處理,相當於執行一次程式就會復位一次。

4樓:匿名使用者

迴圈等待,一般是配合中斷使用,等待中斷

5樓:匿名使用者

死迴圈的意思,for**塊裡的內容一直執行

相當於while(1)

6樓:月下獨酌

就是while(1)

一直迴圈

7樓:匿名使用者

延時,for 迴圈的語法:

for(條件初始化;條件;條件改變)

可見,for的結構中,不僅提供了的「條件」的位置,同時也提供了條件初始化,和條件改變的位置。這三者雖然在同一行上,但並不是依次連線地執行。

條件初始化的表示式首先被執行(並且只被執行一次);

然後程式檢查條件是否成立,如果成立就執行迴圈體中的語句,否則直接結束迴圈。

執行完一遍迴圈以後,程式執行「條件改變」語句。

1到100整數累加的程式,改為for迴圈寫,是最合適的了:

int sum = 0;

int i;

for( i=1; i <= 100;i++)

程式先執行條件初始化語句:i=1;

然後立即判斷條件 i <= 100 嗎?顯示,此時該條件成立;

於是程式執行迴圈體內的語句,此時只有一句: sum += i;

然後,執行改變條件因子的語句: i++; 此時,i值變為 2;

程式再次判斷條件 i <= 100 ?,依然成立,於是開始第二遍迴圈……

變數 i 可以初始化條件時才臨時宣告:

for(int i = 1;i <= 100;i++) ……

for 語句的復合結構,使得程式變得簡捷。比如上面的例子中,原來 while或者do...while結構中,迴圈體內必須兩句語句,現在只需一句(即:

i++這一句被移到for的特定位置上),這樣,我們可以去除花括號:

for(int i=0;i <= 100;i++)

sum += 100;

當然,如果在其它情況下,for的迴圈體內仍需有多行語句時,{}仍是不可避免的。事實上,就算現在這種情況,我也建議大家使用花括號。這樣可以讓程式的結構看上去更清晰。

在本例中,如果非要講究簡捷,我們還可以將迴圈體內的那惟一的一行移到「條件改變」的位置:

for(int i=1; i<=100;sum += i,i++);

sum += i和i++之間用逗號分開。而在for後面的()行末,則直接跟上分號,表示for不必再執行其它的語句。

考慮到後置++的特性(在完成表示式的求值後,才進行加1操作),也可以將sum += i和i++合為一句:

for(int i=1;i<=100;sum += i++);

以上講了for語句極盡合併之技巧,以求乙個簡捷。反過來,for語句也可以向 while或do...while語句一樣拆開寫:

int i = 1;

for(; i <= 100;)

看,條件初始化語句被移出for的結構,而條件改變語句則被當成一行普通語句,直接加入到迴圈體內。而在相應的位置上,只留下分號,用於表示空語句(請注意這一行中有2個分號,分別在 i<=100前後):

for (; i <= 100;)

如上行所示,for迴圈結構中的「條件初始」和「條件的改變」表示式都被省略,在這種情況下for和while或do...while迴圈完全一樣。比如求1~100累加和:

int i=1,sum=0;

for(;i<=100;)

int i=1,sum=0;

while(i<=100)

下面分析幾個例項:(用於分析的例項不提供上機的完整**,請同學們自行建立空白工程,然後加入需要**,確保每個例項都可執行,這是初學者逐步熟練的必經之路……信不信由你。開啟cb吧)。

題一:用for迴圈在螢幕上逐行輸出數字:1~200。

分析:這需要乙個變數,其值從1變到200,並且每變一次新值,就用 cout 語句在螢幕上輸出其值。

答案:for(int i=1;i<=200;i++)

cout << i << endl;

由於迴圈中執行的動作只有一句,所以我們省略了{}。

題二:6能被1、2、3、6整除,這些數稱為6的因子,請迴圈列出36的所有因子。

分析:因子?忘了嗎?求36的因子,就是求1~36中哪些整數可以整除36。我們學過 % 操作符,它用於求兩數相除的餘數。所以整除不整除,只要看餘數是否為0即可。

答案:for(int i=1;i<=36;i++)

如果執行程式,得到結果應是:

1 2 3 4 6 9 12 18 36

微控制器c語言中,for(;;)是什麼意思

8樓:匿名使用者

for後面的括號內(1;2;3)1一般是做賦值、2是做判斷是否滿足條件、做資料加或減。若括號內(;;)條件為空就是在執行for(;;)時它會在中作死迴圈。while(1)

9樓:苒悸漓灬雑貨屋

死迴圈,一般用於等待中斷

10樓:逆寒刀

for(;;);相當於while(1);

微控制器程式設計中for( ;t;t--)是什麼意思?

11樓:

for 為迴圈控制語句

格式為 for (表示式1;表示式2;表示式3)

一般的是 for (t=100;t>0;t--)//迴圈一小段時間。或是t=100,t>0,迴圈執行100次,當t=0時,退出該迴圈。

12樓:e網e友

是做迴圈,100是初值,t>=0是迴圈條件,t--是迴圈增量

13樓:361度浪人

t=100;

for(;t;t--);

將「你的**」執行100遍

14樓:盧超

就是迴圈執行100次。一般for()迴圈後面可以接一對大括號,大括號內是執行的內容,也可以是空指令。這是c語言最常見的三種控制語句之一。

15樓:匿名使用者

這是乙個迴圈語句,第乙個分號前的空白相當於t==0;第二個分號的t就是初值,第三個t--就是每迴圈一次減一。當t減到0的時候推出迴圈

16樓:

for迴圈語句;執行100次。只要t>=0,就會執行for迴圈下面的語句。

關於微控制器c語言中的for語句

17樓:煙火夜空

unsigned char i;

for(i=0;i<3;i++)

微控制器c語言程式設計有乙個for不理解

18樓:匿名使用者

無限迴圈,也可以寫成for (;;);或while(1);

這個程式主程式初始化完成後,進入無限迴圈,什麼也不做,只等待中斷啟動中斷服務程式。

微控制器是什麼,微控制器是什麼意思

微控制器mcu 就是微控制器的意思 microcontrol unit 微控制單元 讓led隨著 的節奏閃動 這個是可以實現的 只需要你在做微控制器程式設計的時候 把led閃爍的延時做好 延時多少時間和 節奏的時間一致就ok了 微控制器是面向控制的 而計算機是面向應用的 微控制器是什麼意思 微控制器...

51微控制器改變頻率什麼意思,51微控制器控制LED閃爍頻率

頻率和占空比是兩個互不相干的概念。頻率是一定時間內電平翻轉的次數。占空比是乙個週期內,高低電平所佔時間的比率。頻率可以改變聲調,占空比來改變音色 這個沒試過 改變占空比是指週期一定的情況下,改變高電平和低電平的時間。改變頻率是指改變週期,這個是有很大區別的。頻率,和週期,是倒數關係,和占空比無關。應...

微控制器c語言右移指令怎麼用,微控制器C語言右移指令怎麼用?

吉祥二進位制 在c語言中 代表右移運算子,就相當於 shr 該運算子為雙目運算子,結合方向為從左到右,作用是把乙個整型數的所有位向右移動指定的位數,移動到右邊界之外的多餘二進位制位會被丟棄,並從左邊界移入0。舉例 計算表示式14 2的值。表示式14 2的值為3,因為14 即二進位制的0000 111...

微控制器c語言程式 高手進,微控制器C語言程式 高手進

include define uchar unsigned char define uint unsigned int define ulong unsigned long const uchar code led7code 共陰數碼管 uchar ledbuffer 8 數碼顯示緩衝區 const...

微控制器p3中wr rd什麼意思,微控制器P3 6 WR和P3 7 RD都是什麼意思啊?不是連線1602的那個wr和rd

wr是寫入,也就是write,是外部ram寫選通訊號輸出端 rd是讀取,也就是read,是外部讀選通訊號的輸出端。這兩個端是與片外ram配合操作的。在組合語言中非常清楚。比如讀外部ram操作,具體的流程是,1 位址加到外部ram 2 rd訊號有效 3 ram將資料送到資料匯流排 4 cpu讀入資料,...