C語言 運算子

2021-08-20 11:33:02 字數 976 閱讀 6483

算術運算子和算術表示式

加+減-乘*除/模(求餘)%

%兩側均應為整型資料;兩個整數相除的結果為整數,但是如果除數或者被除數中有乙個為負值,則捨入的方向是不固定的,多數採取向零取整的方法,取整後向零靠攏;如果加減乘除由乙個數為實數或雙精度數,則結果是double型,應為所有的實數都按double型運算。

強制型別轉換運算子:(型別名)(表示式)

如果已定義x為float型,進行強制型別運算後得到乙個int型的中間變數,它的值等於x的整數部分,而x的型別不變,仍為float。

自增自減運算子:++ --

j=i++:先把i的值賦給j,i再加1;j=++i:i的加1再賦給j。假如i=2,則j=i++得到j=2.i=3,j=++i得到j=i=3。

賦值運算子和賦值表示式

不同型別的整型資料間的賦值歸根到底就是按儲存單元中的儲存形式直接傳送。復合的賦值運算子:在賦值符前加上其他運算子,有利於編譯,能產生質量較高的目標**。凡是二元運算子,都可以與賦值運算子一起組合成復合運算子:+=,-=,/=,%=,>>=,<<=,&=,|=,^=

如a+=1等價於a=a+1

逗號運算子和逗號表示式:表示式1,表示式2,表示式3

求解過程:先求解表示式1,再求解表示式2,最後求解表示式3。整個逗號表示式的值是表示式3的值。

邏輯運算子和邏輯表示式

在邏輯表示式的求解中,並不是所有的邏輯運算子都被執行,只有在必須執行下乙個邏輯運算子才能求出表示式的解時,才執行該運算子。如a&&b&&c,只有a為真時才判斷b的值,只有a和b的值都為真的情況下才判斷c的值。a||b||c,只要a為真就不必判斷b和c。

條件運算子表示式1?表示式2:表示式3

執行順序:先求解表示式1,若為真則求解表示式2,此時表示式2的值作為整個條件表示式的值,若為假,則求解表示式3,此時表示式3作為整個條件表示式的值。

C語言 運算子與 運算子

我們平時使用帶參巨集時,字串中的巨集引數是沒有被替換的。例如 輸出結果為 然而,我們期望輸出的結果是 5 20 2513 14 27 這該怎麼做呢?其實,c語言允許在字串中包含巨集引數。在類函式巨集 帶參巨集 中,號作為乙個預處理運算子,可以把記號轉換成字串。例如,如果a是乙個巨集形參,那麼 a就是...

C語言 運算子和 運算子

變數 代表 取變數的位址 變數 代表 指標型的變數 取址運算子 用來取得其運算元的位址。如果運算元 x 的型別為 t,則表示式 x 的型別是 t 型別指標 指向 t 的指標 取址運算子的運算元必須是在記憶體中可定址到的位址。換句話說,該運算子只能用於函式或物件 例如左值 而不可以用於位欄位,以及那些...

C語言運算子

1級優先順序左結合 圓括號 下標運算子 指向結構體成員運算子 結構體成員運算子 字尾增量運算子 字尾增量運算子 2級優先順序右結合 邏輯非運算子 按位取反運算子 字首增量運算子 字首增量運算子 負號運算子 型別 型別轉換運算子 指標運算子 位址與運算子 sizeof 長度運算子 3級優先順序左結合 ...