? :。
條件運算符(?:)可以實現 if else 的功能,其一般形式爲:exp1 ? exp2 : exp3。
這個條件表達式的意思是,如果 exp1 爲真,則運算 exp2,整個條件表達式的值爲 exp2 的值;反之,則運算 exp3,整個條件表達式的值爲 exp3 的值。
擴展資料:
條件運算符優先級高於賦值、逗號運算符,低於其他運算符。例如:
⑴ m<n ? x : a+3
等價於:(m<n) ?(x) :(a+3)
⑵ a++>=10 && b-->20 ? a : b
等價於:(a++>=10 && b-->20) ? a : b
⑶ x=3+a>5 ? 100 : 200
等價於:x= (( 3+a>5 ) ? 100 : 200 )
參考資料:搜狗百科---條件運算符
2.c#中 條件運算符的用法默認情況下,int類型的變量是值類型,不能賦值null.以下是zhidao解釋
爲了實現Nullable數據類型轉換成non-Nullable型數據,就有了一個這樣的操作符”??(兩個問號)“,雙問號操作符意思是取所賦值??左邊的,如果左邊爲null,取所賦值??右邊的,比如int y = x ?? -1 如果x爲空,那麼y的值爲-1.
於是這時候就可以把最上面第二段代碼改成:回
string strParam= Request.Params["param"]?? "";
另外還有”?(單問號)“修飾符,是System.Nullable<T>;的縮寫形式,比如int?代表是可空的整形,例如:int? a = 1 或者 int? b=null。Nullable類型具有一個答HasValue的bool類型只讀屬性,當Nullable類型實例的該屬性爲true時,則表示該實例是非空實例,包含一個已知值Value,HasValue爲false時,訪問Value屬性將導致System.。
3.c語言中,條件運算符是怎樣的法則c語言中,條件運算符的法則:
由高到低是:!(非),&&(與),||(或)
&&左邊爲0則不看右邊運算,||左邊爲1不看右邊!
例:
main()
{
int a=1,b=2,c=3,d;
d=!b>a&&c||c>2
printf("a=%dn b=%dn c=%dn d=%dn",a,b,c,d);
}
執行結果:a=1
b=0
c=3
d=1
程序執行說明:先執行!b>a即0>a,結果爲0(b=0)
再執行0&&c結果爲0,執行c>2結果爲1
0||1結果爲1
因爲執行順序爲右結合,所以將整個表達式的結果給 d爲1
}
條件運算符:
(表達式1)?(表達式2):(表達式3)
運算規劃:如果表達式1爲真,返回表達式2的結果,否則返回表達式3的結果
例如:
A=1,B=2
(A>B)?A:B
返回值爲2
注意表達式是右結合的.
例:
A=1,B=2,C=3
(A>B)?A:B?C:B
相當於(A>B)?A:(B?C:B)
返回值爲3