精華區beta C_and_CPP 關於我們 聯絡資訊
這應該算基本的東西 各C/C++語言的書籍中也都可以查的到 不過把它列示在這邊 以便版 眾們看文時若有需要 可以速查 列表之後有給初學者的一些提示 (晚一點會改成彩色的 並再排版) 參考旗標 Linux C語言實務 優先順序由大到小 名稱 記號 結合性 運算元數量 一次算符 () 左到右 1元 [] . -> ------------------------------------------------------ 單項算符 !(NOT) 右到左 1元 ~(補數) ++ -- -(負號) (型別) *(取指標值) &(取址) sizeof ------------------------------------------------------ 乘法算符 * 左到右 2元 / %(餘數) ------------------------------------------------------- 加法算符 + 左到右 2元 -(減法) ------------------------------------------------------- 移位算符 >> 左到右 2元 << ------------------------------------------------------- 比較運算子 < 左到右 2元 <= > >= == != -------------------------------------------------------- 位元算符 & 左到右 2元 ^(xor) | -------------------------------------------------------- 布林算符 && 左到右 2元 -------------------------------------------------------- 布林算符 || 左到右 2元 -------------------------------------------------------- 三元運算子 ?: 左到右 3元 -------------------------------------------------------- 指定算符 = 右到左 2元 += -= *= /= %= >>= <<= &= ^= |= ---------------------------------------------------------- 逗號算符 , 左到右 2元 說明: 優先順序較快速的判斷方式是 一元算符>算數算符(+-*/)>比較算符(大於、小於)>布林算符(AND、OR...) 也就是 一元算符>加減乘除>大於小於>布林 例如 -5+3>6||7<8 得到的結果是true 而位在同一個間隔內的算符優先順序是相同的 當多個順序相同的算符在一起的時候 結合性是就依算符本身的結合性 要注意布林運符裡 AND優先權大於OR 例如 a=b=c=d+=100; 因為每個算符優先順序都相等 而=和+=結合性是由右到左 所以 結果是所有的變數值都變成 d加上100後的值