while和for的區別

寫這篇博客的目的在於希望有人要是知道的話下面評論分享一下哦

while 和for的區別:

記得一個老師說:Linux源代碼都是用的while,他將while換成for不能執行。

原因好像是:用while的時候裏面的數據編譯之後其實是一個int8 類型,當執行到多少的時候就會返回來重新加(256),而for中,是int型的,每次加1,所以會一直加,要是將其換成for就會死循環來着,一個參考,我也還麼有找到答案啦。

簡單介紹一下int8數據類型:度娘這樣說的:

int2 -4到3
int4  -16到15
int8 -256到255

但是我在Java書中看到,說其實沒有 區別,只是推薦用for,因爲在for中定義一個變量,是局部的變量所以等循環結束就會變量就會被回收了,而while在外部定義累加變量,會增加其生命週期,所以不安全。

通過組成原理的學習,我才發現原來用while是爲了優化。for循環條件比較多,需要加法器和判斷 而while只需要一個條件 。就是因爲while需要調用的器件比for循環少,所以同樣條件下,whlie的執行速度會更快一些,特別是數據比較大的時候 。


大家有見解的歡迎分享

發佈了43 篇原創文章 · 獲贊 15 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章