设定:int X=20,Y=10
1、算术运算符
注:自增和自减运算符只能用于变量,不可用于常量或表达式。另,++X与X++是不同的(–亦同)。以语句a[x]=100;为例:
a[X++]=100;执行之后得到:a[20]== 100、X== 21。//即,先执行该语句,X再自加1。
a[++X]=100;执行之后得到:X== 21、a[21]== 100。//即,X先自加1,再执行该语句。
再注:关于 '/ '运算符,两个实数相除,得到的是一个双精度实数;两个整数相除,结果为整数,舍弃小数部分。但是如果两个数中有一个为负数,舍入的方向是不固定的。如 -5/3,有的系统结果是 -1,有的是 -2。但多数C编译系统采取“向零取整”的方法,即取整后向零靠拢。
2、关系运算符
3、逻辑运算符
注:C语言一般0为假,非0为真
注:关于||运算符,如果左边的为真,则右边的表达式就不会被执行了,比如 x=y=1, t=++x||++y,的到的结果是t=1,x=2,y=1。因为++x为真,所以无论++y结果如何,表达式++x||++y的结果都为真。
设定: A=5== 00000101
B=10== 00001011
4、赋值运算符
注:第三行 C-=A 应该是相当于 C=C-A,另第二行 多了一个 x
5、位运算符
注:左移运算符左移一位相当于乘二,其效率比乘以2的效率高。左移其右边自动补零,右移其左边补符号位
其他运算符
6、补充
求字节数运算符:sizeof
强制类型转换运算符:(类型)
下标运算符:[ ]
函数调用运算符:( )
7、优先级简记
初等运算符(() [] -> .) > 单目运算符 > 算术运算符 > 关系运算符 >( && > ||)> 条件运算符 > 赋值运算符 > 逗号运算符
8、 一览表
本章终