我有一些奇怪的邏輯事情正在進行。在while循環進入條件下的c#邏輯錯誤
x=false;
這一個不工作:
while (R2.TS("a") && R2.TL("b") && (s=R2.SL().Trim()).Length > 0)
{
x=true;
}
結果:X = FALSE;
這一個確實工作:
while (R2.TS("a") && R2.TL("b"))
{
if((s=R2.SL().Trim()).Length > 0)
{
x=true;
}
}
結果:X =真;如果R2.TS(「a」)然後是R2.TL(「b」),然後((s = R2.SL)),那麼這些函數只有在以正確的順序執行時纔會返回true, ().Trim())。Length> 0)。
輸入是一樣的,但事情肯定是錯在這裏。有任何想法嗎 ?
在此先感謝。
你是什麼意思的「不工作」?你得到的錯誤是什麼? – 2012-07-30 22:32:37
正如你所看到的那樣,dosnt將x變爲true,理論上它應該如此。我沒有得到任何錯誤。 – 2012-07-30 22:33:50
您的標題暗示這是編譯時錯誤,但您的評論表明這是一個運行時錯誤。請澄清。 – 2012-07-30 22:35:22