寫這篇博客的目的在於希望有人要是知道的話下面評論分享一下哦
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的執行速度會更快一些,特別是數據比較大的時候 。
大家有見解的歡迎分享