C语言运算符优先级 详细列表

转载 2012年03月30日 22:04:19

摘自http://www.slyar.com/blog/c-operator-priority.html

恩,问这个问题的人太多了,懒得继续回答,直接贴上来自己看。。。

优先级

运算符

名称或含义

使用形式

结合方向

说明

1

[]

数组下标

数组名[常量表达式]

左到右

 

()

圆括号

(表达式)/函数名(形参表)

 

.

成员选择(对象)

对象.成员名

 

->

成员选择(指针)

对象指针->成员名

 

2

-

负号运算符

-表达式

右到左

单目运算符

(类型)

强制类型转换

(数据类型)表达式

 

++

自增运算符

++变量名/变量名++

单目运算符

--

自减运算符

--变量名/变量名--

单目运算符

*

取值运算符

*指针变量

单目运算符

&

取地址运算符

&变量名

单目运算符

!

逻辑非运算符

!表达式

单目运算符

~

按位取反运算符

~表达式

单目运算符

sizeof

长度运算符

sizeof(表达式)

 

3

/

表达式/表达式

左到右

双目运算符

*

表达式*表达式

双目运算符

%

余数(取模)

整型表达式/整型表达式

双目运算符

4

+

表达式+表达式

左到右

双目运算符

-

表达式-表达式

双目运算符

5

<<

左移

变量<<表达式

左到右

双目运算符

>>

右移

变量>>表达式

双目运算符

6

>

大于

表达式>表达式

左到右

双目运算符

>=

大于等于

表达式>=表达式

双目运算符

<

小于

表达式<表达式

双目运算符

<=

小于等于

表达式<=表达式

双目运算符

7

==

等于

表达式==表达式

左到右

双目运算符

!=

不等于

表达式!= 表达式

双目运算符

8

&

按位与

表达式&表达式

左到右

双目运算符

9

^

按位异或

表达式^表达式

左到右

双目运算符

10

|

按位或

表达式|表达式

左到右

双目运算符

11

&&

逻辑与

表达式&&表达式

左到右

双目运算符

12

||

逻辑或

表达式||表达式

左到右

双目运算符

13

?:

条件运算符

表达式1? 表达式2: 表达式3

右到左

三目运算符

14

=

赋值运算符

变量=表达式

右到左

 

/=

除后赋值

变量/=表达式

 

*=

乘后赋值

变量*=表达式

 

%=

取模后赋值

变量%=表达式

 

+=

加后赋值

变量+=表达式

 

-=

减后赋值

变量-=表达式

 

<<=

左移后赋值

变量<<=表达式

 

>>=

右移后赋值

变量>>=表达式

 

&=

按位与后赋值

变量&=表达式

 

^=

按位异或后赋值

变量^=表达式

 

|=

按位或后赋值

变量|=表达式

 

15

,

逗号运算符

表达式,表达式,…

左到右

从左向右顺序运算

说明:

同一优先级的运算符,运算次序由结合方向所决定。


C 语言运算符优先级(记忆口诀)

优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右   () 圆括...
  • u013630349
  • u013630349
  • 2015年08月12日 15:09
  • 7530

C++ 运算符的优先级和结合性

运算符的优先级和结合性 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 后置++ 后置自增运算符 变量名++ 左到右 后置--...
  • lfb_2048
  • lfb_2048
  • 2017年03月14日 12:01
  • 2115

javascript基础(赋值运算符,关系运算符,相等运算符,三元运算符,运算符的优先级,代码块)(十)

有代码编写基础的,自学时请略过 1.赋值运算符: /* 赋值运算符可以将一个值赋值给一个变量 = - =可以...
  • u010853130
  • u010853130
  • 2017年02月08日 09:35
  • 427

JavaScript 操作符(算术/逻辑/比较/赋值运算符/优先级/自增自减/三目运算符)

1. 算术运算符 + (加):相加或连接 - (减)     *  (乘)  /  (除) % (取余) ( ) (提高优先级) 高级运算对象:Math(平方、立方、三角函数、……) ...
  • carriehaohao
  • carriehaohao
  • 2017年03月04日 22:11
  • 891

逻辑运算符、位运算符、移位运算符、三目运算符、运算符的优先级

一、逻辑运算符 :逻辑运算符的作用是用于连接布尔表达式的。 1、& (与,并且) 规律: 只有左右变量同时为true,那么结果才是true,否则就false。2、| (或,或者) 规律: 只要...
  • qq_34944851
  • qq_34944851
  • 2016年09月22日 11:00
  • 2009

Java运算符详解及其优先级

1.Java运算符详解 1.1赋值运算符(=) ①对基本类型赋值 a=b; 当b改变时,a不改变 ②对对象类型赋值 a=b; 当b改变时,a也跟着改变 1.2算数运算法 ①加号运算符(+) ②减号运算...
  • lavor_zl
  • lavor_zl
  • 2014年11月02日 21:33
  • 1211

C语言运算符的优先级表

优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] ...
  • zpj779878443
  • zpj779878443
  • 2014年07月10日 10:27
  • 3978

面试笔记4(运算符及优先级)

.。。。
  • u014734779
  • u014734779
  • 2015年05月28日 14:31
  • 236

C语言中++自增运算符后置时的使用说明(附C语言运算符优先级表)

自增运算符后置情形下的探索。
  • ds1231h
  • ds1231h
  • 2015年11月30日 00:54
  • 2161

c++ 运算符优先级

原文地址:http://en.cppreference.com/w/cpp/language/operator_precedence C++ Operator Precedence ...
  • yuyanggo
  • yuyanggo
  • 2015年09月29日 11:02
  • 516
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言运算符优先级 详细列表
举报原因:
原因补充:

(最多只允许输入30个字)