天天看點

C語言 逗号運算(,)及其表達式

C語言提供一種用逗号運算符 ​

​,​

​ 連接配接起來的式子,稱為逗号表達式。

逗号運算符又稱順序求值運算符。

1.一般形式

​表達式1, 表達式2, ……, 表達式n​

2.求解過程

自左至右,依次計算各表達式的值,“表達式n” 的值即為整個逗号表達式的值。

記住,最後一個表達式的值才是整個逗号表達式的值。

看案例代碼:

例如,逗号表達式​

​a = 3 * 5, a * 4​

​的值是60,

先求解​

​a = 3 * 5​

​,得​

​a=15​

​;

再求​

​a * 4 = 60​

​,【​

​15*4=60​

​】

是以逗号表達式的值是 60。【最後一個表達式的值才是整個逗号表達式的值,最後一個表達式的值是60,是以逗号表達式的值是60】

#include <stdio.h>

int main(void) { 
    int a;
    printf("a=%d",(a = 3 * 5, a * 4));
    return 0;
}      
C語言 逗号運算(,)及其表達式

又例如,逗号表達式​

​(a = 3 * 5, a * 4), a + 5​

​的值是20,

先求解​

​a = 3 * 5​

​,得​

​a=15​

​;

再求​

​a * 4=60​

​;【​

​15*4=60​

​】

最後求解​

​a + 5=20​

​,【​

​15+5=20​

​】

是以逗号表達式的值是20。【最後一個表達式的值才是整個逗号表達式的值,最後一個表達式的值是20,是以逗号表達式的值是20】

#include <stdio.h>

int main(void) { 
    int a;
    printf("a=%d",((a = 3 * 5, a * 4), a + 5));
    return 0;
}      
C語言 逗号運算(,)及其表達式