首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C >> C 語言基礎

C語言運算符優先級與結合性核心規則

     編輯:C 語言基礎

優先級:誰先算?

#include <stdio.h>
int main() {
    int a=10,b=1,c=2;
    a=b=c;
    printf("12+3*5=%d\n", 12+3*5);
    printf("a=%d, c=%d\n", a, c);
    return 0;
}

輸出:
12+3*5=27
a=2, c=2

12+3*5:先乘後加,* 優先級高於 +,同數學規則。可用 ( ) 改變順序:(12+3)*5=75。

結合性:同運算符多次出現誰先算?

a=b=c:先 b=c,再 a=b,賦值運算符 = 具**右結合性**(從右向左結合)。

  • 左結合性:從左向右(如 +、-、*、/)。
  • 右結合性:從右向左(如 =、+=、單目運算符)。

表達式 vs 語句

  • 表達式:計算公式,由數據、變量、運算符組成,必有值(如 3*4+5、a=c=d)。
  • 語句:範圍更廣,不一定計算、不一定有值(函數調用、選擇、循環等)。
  • 以 ; 結束的通常稱語句(如 3*4+5;、a=c=d;)。

運算符目數

  • 雙目運算符:兩側有操作數(+、-、*、/、= 等)。
  • 單目運算符:一個操作數(++、--、!、~ 等)。
  • 三目運算符:三個操作數(? :)。
C 語言有幾十種運算符,完整優先級與結合性表請參考《C語言運算符的優先級和結合性一覽表》。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved