优先口决 括号成员第一; //括号运算符[]() 成员运算符. -> 全体单目第二; //所有的单目运算符比如++ -- +(正) -(负) 指针运算*& 乘除余三,加减四; //这个"余"是指取余运算即% 移位五,关系六; //移位运算符:<< >> ,关系:> < >= <= 等 等于(与)不等排第七; //即== != 位与异或和位或; //这几个都是位运算: 位与(&)异或(^)位或(|) "三分天下"八九十; 逻辑或跟与; //逻辑运算符:|| 和 && 十二和十一; //注意顺序:优先级(||) 低于 优先级(&&) 条件高于赋值, //三目运算符优先级排到 13 位只比赋值运算符和","高//需要注意的是赋值运算符很多! 逗号运算级最低! //逗号运算符优先级最低 Turbo C运算符的优先次序 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━ 表达式 ┃优先级 ────────────────────────────╂──── ()(小括号) [](数组下标) .(结构成员) ->(指针型结构成员)┃ 最高 ────────────────────────────┃ ↑ !(逻辑非) .(位取反) -(负号) ++(加1) --(减1) &(变量地址)┃ │ ────────────────────────────┃ │ *(指针所指内容) type(函数说明) sizeof(长度计算) ┃ │ ────────────────────────────┃ │ *(乘) /(除) %(取模) ┃ │ ────────────────────────────┃ │ +(加) -(减) ┃ │ ────────────────────────────┃ │ <<(位左移) >>(位右移) ┃ │ ────────────────────────────┃ │ <(小于) <=(小于等于) >(大于) >=(大于等于) ┃ │ ────────────────────────────┃ │ ==(等于) !=(不等于) ┃ │ ────────────────────────────┃ │ &(位与) ┃ │ ────────────────────────────┃ │ ^(位异或) ┃ │ ────────────────────────────┃ │ |(位或) ┃ │ ────────────────────────────┃ │ &&(逻辑与) ┃ │ ────────────────────────────┃ │ ||(逻辑或) ┃ │ ────────────────────────────┃ │ ?:(?表达式) ┃ │ ────────────────────────────┃ │ = += -=(联合操作) ┃ │ ────────────────────────────┃ │ ,(逗号运算符) ┃ 最低 /**********************************另一表*************************/ 运算符(优先级从高到低) 结合性 ++(后缀) --(后缀) ( )(调用函数) [] {} (组合文字) . -> 从左到右 ++(前缀) --(前缀) -+~! sizeof * (取值) &(地址) (type) (都是一元运算) 从右到左 (type name) 从右到左 * / % 从左到右 + -(二者都是二元运算) 从左到右 << >> 从左到右 < > <= >= 从左到右 == != 从左到右 & 从左到右 ^ 从左到右 | 从左到右 && 从左到右 || 从左到右 ?:(条件表达式) 从右到左 = *= /= %= += -= <<= >>= &= |= ^= 从右到左 ,(逗号运算符) 从左到右
C运算符优先级
最新推荐文章于 2024-03-22 17:45:16 发布