當前位置:學問君>學習教育>考研>

C語言中break與continue的區別

學問君 人氣:2.99W

break 關鍵字很重要,表示終止本層循環。現在這個例子只有一層循環,當代碼執行到break 時,循環便終止。

C語言中break與continue的區別

如果把break 換成continue 會是什麼樣子呢?continue 表示終止本次(本輪)循環。當代碼執行到continue 時,本輪循環終止,進入下一輪循環。

while(1)也有寫成while(true) 或者while(1==1) 或者while((bool) 1)等形式的,效果一樣。

do-while 循環:先執行do 後面的代碼,然後再判斷while 後面括號裏的`值,如果爲真,循環開始;否則,循環不開始。其用法與while 循環沒有區別,但相對較少用。

for 循環:for 循環可以很容易的控制循環次數,多用於事先知道循環次數的情況下。
拓展:
  我有一個char * 型指針正巧指向一些int 型變量, 我想跳過它們。 爲什麼如下的代碼((int *)p)++; 不行?

在C 語言中, 類型轉換意味着“把這些二進制位看作另一種類型, 並作相應的對待”; 這是一個轉換操作符, 根據定義它只能生成一個右值(rvalue)。而右值既不能賦值, 也不能用++ 自增。(如果編譯器支援這樣的擴展, 那要麼是一個錯誤, 要麼是有意作出的非標準擴展。) 要達到你的目的可以用:p = (char *)((int *)p + 1);

或者,因爲p 是char * 型, 直接用p += sizeof(int);

但是, 在可能的情況下, 你還是應該首先選擇適當的指針類型, 而不是一味地試圖李代桃僵。