C語言問號意思

在C語言中,問號(?)通常用於條件表達式或三元運運算元中。C語言有一個特殊的運運算元稱為三元條件運運算元,其語法為:

exp1 ? exp2 : exp3

這裡,exp1 是一個條件表達式,exp2exp3 是兩個表達式。整個表達式的運作方式如下:

這個運運算元允許你在一個表達式中根據一個條件來選擇兩個表達式中的一個。它通常用來簡化條件語句,例如:

int max = a > b ? a : b;

這句話會比較 ab,如果 a 更大,則 max 被賦值為 a,否則 max 被賦值為 b。這句話等價於以下if-else語句:

if (a > b) {
    max = a;
} else {
    max = b;
}

條件運運算元可以嵌套使用,但應避免過度使用,以免使代碼難以閱讀和維護。此外,問號(?)在C語言中沒有其他特殊用途,它只是作為條件運運算元的標誌。