a?b:c
這個(gè)是條件表達(dá)式,表示如果a為真,則表達(dá)式值為b,如果a為假,則表達(dá)式值為c
條件表達(dá)式具體說(shuō)明如下
條件語(yǔ)句:
if(a>b) max=a;else max=b;
可用條件表達(dá)式寫為
max=(a>b)?a:b;
執(zhí)行該語(yǔ)句的語(yǔ)義是:如a>b為真,則把a(bǔ)賦予max,否則把b 賦予max.
使用條件表達(dá)式時(shí),還應(yīng)注意以下幾點(diǎn):
1) 條件運(yùn)算符的運(yùn)算優(yōu)先級(jí)低于關(guān)系運(yùn)算符和算術(shù)運(yùn)算符,但高于賦值符.
因此
max=(a>b)?a:b
可以去掉括號(hào)而寫為
max=a>b?a:b
2) 條件運(yùn)算符?和:是一對(duì)運(yùn)算符,不能分開(kāi)單獨(dú)使用.
3) 條件運(yùn)算符的結(jié)合方向是自右至左.
例如:
a>b?a:c>d?c:d
應(yīng)理解為
a>b?a:(c>d?c:d)
這也就是條件表達(dá)式嵌套的情形,即其中的表達(dá)式3又是一個(gè)條件表達(dá)式.
聯(lián)系客服