c语言操作符优先级(转自博客园)
来源:互联网 发布:黑莓9900 软件 编辑:程序博客网 时间:2024/05/20 00:10
c语言操作符优先级
优先级
运算符
含 义
要求运算
对象的个数
结合方向
1
()
[]
->
.
圆括号
下标运算符
指向结构体成员运算符
结构体成员运算符
自左至右
2
!
逻辑非运算符
1
(单目运算符)
自右至左
~
按位取反运算符
++
自增运算符
--
自减运算符
-
负号运算符
(类型)
类型转换运算符
*
指针运算符
&
地址与运算符
sizeof
长度运算符
3
*
/
%
乘法运算符
除法运算符
求余运算符
2
(双目运算符)
自左至右
4
+
-
加法运算符
减法运算符
2
(双目运算符)
自左至右
5
<<
>>
左移运算符
右移运算符
2
(双目运算符)
6
<
<=
>
>=
关系运算符
2
(双目运算符)
自左至右
7
==
!=
等于运算符
不等于运算符
2
(双目运算符)
自左至右
8
&
按位与运算符
2
(双目运算符)
自左至右
9
^
按位异或运算符
2
(双目运算符)
自左至右
10
|
按位或运算符
2
(双目运算符)
自左至右
11
&&
逻辑与运算符
2
(双目运算符)
自左至右
12
||
逻辑或运算符
2
(双目运算符)
自左至右
13
? :
条件运算符
3
(三目运算)
自右至左
14
=
+=
-=
*=
/=
%=
>>=
<<=
&=
^=
|=
赋值运算符
2
自右至左
15
,
逗号运算符
自左至右
例如:
void main(){int x=3;printf("%d\n",x+=x==x*x);}
由优先级顺序可知:
x+=x==x*x等价于:x+=(x==(x*x))
所以输出结果为:3;
补充:
c语言中没有bool值,只有0和1,其中==比较运算符真为1,假为0.
- c语言操作符优先级(转自博客园)
- C语言操作符优先级(转)
- C语言操作符优先级
- C语言操作符优先级
- C语言操作符优先级
- C语言操作符优先级
- C语言操作符优先级
- C语言操作符优先级
- C语言操作符优先级
- C语言操作符优先级
- C语言操作符优先级
- C语言操作符优先级
- C语言操作符优先级
- C语言操作符优先级
- C与C#操作符优先级(转自两篇文章)
- C语言操作符(运算符?)的优先级[收藏]
- C语言的操作符优先级
- C语言的操作符优先级
- HDU 4611 Balls Rearrangement (数学-思维逻辑题)
- 2013/08/25 C# WPF 学习笔记
- 蓄水池算法-如何从未知或者很大样本空间随机地取k个数
- CRM Account, Opportunity and Activity Mangement
- java web之设计模式和案例
- c语言操作符优先级(转自博客园)
- Android Bitmap和Canvas学习笔记
- Just learn how to use the JNI
- 图像处理中的一些基本问题解释
- JAVA开发者最常去的20个英文网站
- poj 2533 Longest Ordered Subsequence
- Ubuntu12.04卸载apache2后再安装出现的问题解决
- Python基础 - 内建函数
- deque,list,queue,priority_queue