基礎語法——A&&B與B&&A有什麼區別?

一個栗子:

for ( j=100; j>=0 && v[j]>key; j--) {
	;//do something
	}

運行沒有問題。
但是假如我把這段代碼這麼寫:

//注意&&前後的表達式調換了位置
for ( j=100; v[j]>key && j>=0 ; j--) {
	;//do something
	}

這個時候運行就出了問題!

原因是如果判定&&前面的表達式值爲false就不會繼續向後判斷了。

在本例中:

j>=0在前面保證了j取到-1時直接跳出循環。如果v[j]>key在前,當j取到-1時會發生錯誤。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章