2014-02-13 31 views

回答

5

是的,你需要聲明它的外循環:

string _l; 
while((_l = _sr.ReadLine()) != null){ 
      _sb.AppendLine(_l); 
} 

該規範定義了一個while語句:

8.8.1 The while statement

while-statement:

while( boolean-expression ) embedded-statement

因爲變量聲明不是布爾表達式,所以你不能把它們放在t他條件一段時間循環。

+1

我想試圖解釋爲什麼在這裏評論,但意識到一些事情。 'for'和'foreach'可以做到。很容易就可以說「它只是這樣設計的」,但現在我真的很想知道爲什麼。 – Magus

+0

我想知道爲什麼呢!!!!! – Jaeh

+0

@Magus - 規範分別定義了'while'和'for foreach'循環的形式。 'for'循環有一個可以包含變量聲明的顯式初始化程序。 'foreach'循環還可以聲明一個循環記分標識符。 ''while循環條件必須只是一個'布爾表達式'。 – Lee