表达式
把变量和字面值与运算符组合起来,就可以创建表达式,它是计算的基本建立块。
运算符大致分为3类:
(1)一元运算符,处理一个操作数。
(2)二元运算符,处理两个操作数。
(3)三元运算符,处理三个操作数。数学运算符:
运算符
类别
示例表达
结果
+
二元
var1 = var2+var3
var1的值是var2与var3的和
-
二元
var1 = var2-var3
var1的值var2的值减去var3的值所得的值
*
二元
var1 = var2*var3
var1的值是var2与var3的乘积
/
二元
var1 = var2/var3
var1的值是var2除以var3所得的值
%
二元
var1 = var2%var3
var1的值是var2除以var3所得的余数
+
一元
var1 =+ var2
Var1的值等于var2的值
-
一元
var1 =- var2
var1的值等于var2的值除以或乘以-1
++
一元
var1 =++ var2
var1的值是var2+1,var2递增1
--
一元
var1 =-- var2
var1的值是var2-1,var2递减1
++
一元
var1 = var2++
var1的值是var2,var2递增1
--
一元
var1 = var2--
var1的值是var2,var2递减1
赋值运算符:
运算符
类别
示例表达
结果
=
二元
var1=var2
var1被赋予var2的值
+=
二元
var1+=var2
var1被赋予var1与 var2的和
-=
二元
var1- =var2
var1被赋予var1与var2的差
*=
二元
var1*=var2
var1被赋予var1与var2的乘积
/=
二元
var1/=var2
var1被赋予var1与var2相除所得的结果
%=
二元
var1%=var2
var1被赋予var1与var2相除所得的余数
布尔比较运算符:
运算符
类别
示例表达
结果
= =
二元
var1=var2= =var3
如果var2等于var3,var1的值就是true,否则为false
!=
二元
var1=var2!=var3
如果var2不等于var3,var1的值就是true,否则为false
<
二元
var1=var2<var3
如果var2小于var3,var1的值就是true,否则为false
>
二元
var1=var2>var3
如果var2大于var3,var1的值就是true,否则为flase
<=
二元
var1=var2<=var3
如果var2小于或等于var3,var1的值就是true,否则为false
>=
二元
var1=var2>=var3
如果var2大于或等于var3,var1的值就是true,否则为false
布尔赋值运算符:
运算符
类别
示例表达
结果
&=
二元
var1&=var2
var1的值是var1&var2的结果
|=
二元
var1|=var2
var1的值是var1|var2的结果
^=
二元
var1^=var2
var1的值是var1^var2的结果
>>=
一元
var1>>=var2
把var1的二进制值向右移动var2位,就得到var1的值
<<=
一元
var1<<=var2
把var1的二进制值向左移动var2位,就得到var1的值
其它布尔运算符:
运算符
类别
示例表达
结果
!
一元
var1=!var2
如果var2是false,var1的值就是true,否则为false(逻辑非)
&
二元
var1=var2&var3
如果var2和var3都是true,var1的值就是true,否则为alse(逻辑与)
|
二元
var1=var2|var3
如果var2或var3是true(或两者都是),var1的值就是true,否则为false(逻辑或)
^
二元
var1=var2^var3
如果var2或var3中有且仅有一个是true,var1的值就是true,否则为false(逻辑异或)
运算符的优先级:
优先级
运算符
优
先
级
由
高
到
低
++,--(用作前缀),(),+,-(一元),!,
*,/,%
+,-
<<,>>
<,>,<=,>=
= =,!=
&
^
|
&&
||
=,*=,/=,%=,+=,-=,<<=,>>=,&=,^=,|=
++,--(用作后缀)
++ --用作前后缀的区别:
用作前缀时是先递增在执行,用作后缀是先执行在递增。
示例:
int var1,var2=5 ,var3=6;
var1=var2++*--var3;
在表达式计算前,var3前面的运算符--会起作用,把它的值从6改为5。可以忽略var2后面的++运算符,因为它是在计算完成后才发挥作用,所以var1的结果是5与5的乘积,var1的值是25。