if語句也能用逗號表示式嗎,if語句中的條件表示式中只能使用關係或邏輯表示式嗎?

2021-03-27 10:11:05 字數 1355 閱讀 3539

1樓:光環國際

逗號表示式與加減乘除本質上是一樣的, 它的求值是從左向右依次對表示式求值,

整個表示式的結果取逗號表示式中最後一個表達的的結果, 如果非零, 就會使 if 成立!

(1)例子一:

if (a!=b,b!=c,a!=c)

相當於:

a!=b;b!=c;if (a!=c)

(2)例子二:

if (a=1,b=2,c>2)

相當於a=1;b=2;if(c>2)

也就是說,計算前兩個逗號前的式子,而以最後一個式子做返回值標準。

2樓:馬雲西天取經

逗號運算子最終的判斷是最後一個,就像if(a>b,b>c,c>d),只要c>d就執行,但是逗號運算子的每句都是要執行的,就像執行的時候先讓你輸入兩個數,再執行後一個a||b,如果a,b 都為0則結束迴圈,所以逗號語句每句都要執行,但是隻是最好一個作為判斷的標誌,好像是這樣啊。

3樓:匿名使用者

不是逗號表示式,if(a>b,b>c,c>d)的意思是如果a>b則返回b>c的結果是真還是假,如果a<=b,則返回c>d的結果是真還是假。

if語句中的條件表示式中只能使用關係或邏輯表示式嗎? 10

4樓:匿名使用者

看你初始值定義的是什麼型別的 int與int比較 不能與字串比較

5樓:匿名使用者

不是!可以是賦值表示式,數值表示式,各種表示式都可以!

js中的if條件竟然可以這樣寫???

6樓:猥瑣堂

這是逗號運算子,之前所有的運算表示式都會執行,但整個語句的值是最後一個表示式的值

比如:a = (b=2, c=3, 4==4);

括號裡的是逗號運算表示式,b=2, c=3這樣的賦值表示式會正常執行,

但a最後的值是true,也就是4==4的結果,true;如果換成4==5,a就是false了

而 && 表示式是隻要其中一個為假,那麼整個表示式就是假

逗號表示式(s=a, b, c, ...., n)s的值就是n的值,與前面的都沒有關係,只是正常的執行罷了,不會影響結果

7樓:匿名使用者

if的條件是任意合法表示式

js中逗號表示式的值為最右面的那個值

if(1,1,1)等價於if(1)

if(1,2,3,4,5)等價於if(5)if(false,true)等價於if(true)if(true,false)等價於if(false)與&&無任何關係

C語言 逗號表示式,c語言 逗號表示式

c b a a 1 b a b 根據運算子優先順序,等效於 c b a a 1 b a b 整體是逗號表示式,逗號表示式的值由最末項決定,即a b,前面的表示式沒有改變a和b的值,所以整個表示式的值是2 3,即5 intmain 結果 value 8 逗號表示式從左往右計算,但返回右邊的資料值作為表...

C語言逗號表示式 a 3 5,a 4,a 5 的值是多少

a 3 5,a 4 a 5 應該是 a 3 5,a 4 a 5 吧 逗號表示式注意兩個基本知識 1.逗號表示式的運算順序是從左向右運算 2.逗號表示式的值取逗號中最右表示式的值 現在看 a 3 5,a 4 a 5這個逗號表示式,首先對於 a 3 5,a 4 和a 5來說,按照從左向右運算先計算 a ...

正規表示式匹配 數字,數字,應該如何寫,逗號隔開,逗號只有

這樣是可以得也可以使用 d d 正規表示式 數字以逗號隔開例如0,100只能是這種形式 你給出的正則貌似有點問題,無法匹配 1,2,3這樣的 可以試試這個 d d var reg d d 正規表示式 數字以逗號隔開。100,200 40,70 一定要是這種格式?最後兩位數字能匹配到?試試加強版吧va...