條件語句「 」和「 」的使用注意事項

2021-04-30 04:45:06 字數 874 閱讀 8786

在日常程式設計過程中,不可避免地會使用到條件語句的「&&」和「||」,然而這2個條件語句讓我承擔了太多的無奈,稍有不慎,就會讓我們吃盡苦頭查詢bug。

先說一下「&&」的語句表達意思,如有: expr1 && expr2 這麼個條件「與」語句,表示當表示式expr1和expr2都為「真」時,整個條件語句為「真」,而如果expr1和expr2中的任意乙個為「假」時,則整個條件語句為「假」,這裡蘊含有這麼乙個意思,如果expr1為「假」,則expr2就不會執行判斷,原因是expr1已經為「假」,沒有必要再去判斷expr2了,所以導致expr2不會執行。

例如下面的程式:

if ( sum > 100 &&  ( ( fp=fopen( filename,"a" ) ) != null ) 

fprintf( fp, " sum is %id n", sum );

fclose( fp );

本來的意圖是,如果 sum大於100 ,則向檔案中寫一條出錯資訊,為了方便,把兩個條件判斷寫在一起,於是,如果 sum<=100 時,就會導致開啟檔案的操作不會執行,最後在 fprintf 和 fclose 就會發現未知的結果。

說完「&&」的語句,我們再來說說「||」語句的陷阱,如有:expr1 || expr2 這麼個條件「或」語句,它的意思是當expr1或expr2中的任意乙個條件為「真」時,整個條件語句為「真」,也就是說,程式先執行表示式 expr1 如果為 " 真 " , expr2 將不被執行, expr2 僅在 expr1 為 " 假 " 時才會被執行。因為第乙個表示式為「真」了,整個表示式都為「真」,所以也就沒有必要再去執行第二個表示式了,這樣就有可能導致如果expr2的語句關係到後續的**執行,就有很可能出錯。

所以,在條件語句中,並非所有的語句都會執行,當我們的條件語句非常多時,這點要尤其注意。

SQL group by 語句注意事項

使用group by子句的時候,一定要記住下面的一些規則 什麼時候使用group by?可以考慮查詢結果是以什麼樣的形式返回的 e.g1 求每個學生的所有科目中的最高分,顯示學號,課程號,成績 這個題應該用學號來進行分組嗎?乍一看,我們需要對成績表中所有學號相同的元組進行處理,好像需要用到 grou...

Excel條件格式注意事項

1.不可以直接多表使用條件格式 但可用定義名稱突破 3.貼上資料時將覆蓋條件格式 所以請盡量用選擇性貼上 4.無法將條件格式設定出的單元格格式用查詢 格式 從單元格選擇格式 見批註 5.本法對指定的條件格式產生之背景色所對應之資料進行計算 但可自定義函式達成 6.條件格式無法設定超過三種條件之背景色...

php cookie 的使用和注意事項

setcookie 設定cookie 注釋 setcookie 函式必須位於標籤之前 語法setcookie name,value,expire,path,domain,secure 說明 name cookie名稱 value cookie儲存的值 expire 規定 cookie 的有效期。pa...