您的位置:首页 > 编程语言 > C语言/C++

C语言优先级

2011-08-01 15:22 337 查看
优先口决

括号成员第一; //括号运算符[]() 成员运算符. ->

全体单目第二; //所有的单目运算符比如++ -- +(正) -(负) 指针运算*&

乘除余三,加减四; //这个"余"是指取余运算即%

移位五,关系六; //移位运算符:<< >> ,关系:> < >= <= 等

等于(与)不等排第七; //即== !=

位与异或和位或; //这几个都是位运算: 位与(&)异或(^)位或(|)

"三分天下"八九十;

逻辑或跟与; //逻辑运算符:|| 和 &&

十二和十一; //注意顺序:优先级(||) 低于 优先级(&&)

条件高于赋值, //三目运算符优先级排到 13 位只比赋值运算符和","高//需要注意的是赋值运算符很多!

逗号运算级最低! //逗号运算符优先级最低

Turbo C运算符的优先次序

━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━

表达式 ┃优先级

────────────────────────────╂────

()(小括号) [](数组下标) .(结构成员) ->(指针型结构成员)┃ 最高

────────────────────────────┃ ↑

!(逻辑非) .(位取反) -(负号) ++(加1) --(减1) &(变量地址)┃ │

────────────────────────────┃ │

*(指针所指内容) type(函数说明) sizeof(长度计算) ┃ │

────────────────────────────┃ │

*(乘) /(除) %(取模) ┃ │

────────────────────────────┃ │

+(加) -(减) ┃ │

────────────────────────────┃ │

<<(位左移) >>(位右移) ┃ │

────────────────────────────┃ │

<(小于) <=(小于等于) >(大于) >=(大于等于) ┃ │

────────────────────────────┃ │

==(等于) !=(不等于) ┃ │

────────────────────────────┃ │

&(位与) ┃ │

────────────────────────────┃ │

^(位异或) ┃ │

────────────────────────────┃ │

|(位或) ┃ │

────────────────────────────┃ │

&&(逻辑与) ┃ │

────────────────────────────┃ │

||(逻辑或) ┃ │

────────────────────────────┃ │

?:(?表达式) ┃ │

────────────────────────────┃ │

= += -=(联合操作) ┃ │

────────────────────────────┃ │

,(逗号运算符) ┃ 最低

/**********************************另一表*************************/

运算符(优先级从高到低)结合性
++(后缀) --(后缀) ( )(调用函数) [] {} (组合文字) . ->从左到右
++(前缀) --(前缀) -+~! sizeof * (取值) &(地址) (type) (都是一元运算)从右到左
(type name)从右到左
* / %从左到右
+ -(二者都是二元运算)从左到右
<< >>从左到右
< > <= >=从左到右
== !=从左到右
&从左到右
^从左到右
|从左到右
&&从左到右
||从左到右
?:(条件表达式)从右到左
= *= /= %= += -= <<= >>= &= |= ^=从右到左
,(逗号运算符)从左到右
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: