當前位置:
首頁 > 知識 > C語言while循環語句

C語言while循環語句

在單片機 C 語言編程的時候,每個程序我們都會固定的加一句 while(1),這條語句就可以起到死循環的作用。對於 while 語句來說,他的一般形式是:

while (表達式){

循環體語句;

}

在 C 語言里,通常表達式符合條件,我們叫做真,不符合條件,叫做假。比如前邊 i

while(表達式)這個括弧里的表達式,為真的時候,就會執行循環體語句,當為假的時候,就不執行。在這裡先不舉例,後邊遇到時再詳細說明。

還有另外一種情況,就是我們 C 語言裡邊,除了表達式外,還有常數,習慣上,我們把非 0 的常數都認為是真,只有 0 認為是假,所以我們程序中使用了 while(1),這個數字 1,可以改成 2、3、4......等等都可以,都是一個死循環,不停的執行循環體的語句,但是如果把這個數字改成 0,那麼就不會執行循環體的語句了。

大家通過學習 for 循環和 while 循環,是不是會產生一個疑問?為何有的循環加上{},而有的循環卻沒加呢?什麼時候需要加,什麼時候不需要加呢?

我們前邊講過,在 C 語言中,分號表示語句的結束,而在循環語句里{}表示的是循環體的所有語句,如果不加大括弧,則只循環執行一條語句,即第一個分號之前的語句,而加上大括弧後,則會執行大括弧中所有的語句,舉個例子看一下吧,上節課的閃爍小燈程序如下所示。

程序一:

while (1){

LED = 0;

for(i=0;i

LED = 1;

}

程序二:

while (1)

LED = 0;

for(i=0;i

LED = 1;

程序一就是我們上節課的程序,直接可以實現閃爍功能。而程序二沒有加大括弧,從語法上來看是沒有任何錯誤的,寫到 Keil 里編譯一下也不會報錯。但是從邏輯上來講,程序二隻會不停的循環「LED = 0;」這條語句,實際上和程序三效果是相同的。

程序三:

純文本複製

while(1){

LED = 0;

}

for(i=0;i

LED = 1;

程序執行到 while(1)已經進入死循環了,所以後邊三條語句是一輩子也執行不到的。因此為了防止出類似的邏輯錯誤,我們推薦,不管循環語句後邊是一條還是多條語句,都加上{}以防出錯。

零基礎小白到大神之路,歡迎加裙 四八七八七五零零四,群里有免費C++課程,還有大量乾貨哦


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 IT技術java交流 的精彩文章:

自學java編程的學習路徑和框架結構,這裡有都有!簡潔明了!
程序員javascript寫了這個特效,看完就懵了
為什麼越來越多的人選擇Java?
Java網路編程基礎
2017年最重要的HTML5開發手冊,傳播正能量

TAG:IT技術java交流 |

您可能感興趣

Go 語言切片(Slice)
語言趣談:「母校」英語是「Mother school」?別鬧笑話了!
Salmon:一個基於Python語言的郵件伺服器
Python語言環境配置
vscode寫c語言(windows)
Canonical宣布Kotlin編程語言Snap包格式上線
Julia:集Python、C+、R等語言為一體的全新語言
大師語言 | John William Godward
微軟推最新程序語言Bosque 以Functors取代Loop循環
EC Innovations 為「遊戲改變世界」搭建語言橋樑
Python語言學習路線圖
Facebook新研究:一個編碼器hold住93種語言!跨語言遷移無需修改
用R語言的Blogdown+Hugo+Netlify+Github建博客
Semantic Experiences網站:用自然語言同AI交流
Kotlin 語言獲Linux通行證
攝影|Bruno Barbey:世界通用語言
Dotdot:物聯網的語言
python入門——動態語言
《The Room:Old Sins》多語言版本展開事前註冊
Kotlin語言Web庫又添一虎將:Kweb