运算符表达式和语句
1.基本运算符
-
=
- 数据对象:泛指数据在内存的存储区域
- 左值:表示可以被更改的数据对象
- 右值:能赋给左值的量
-
+:加
-
-:减
-
*:乘
-
/:除
-
%:取余数
-
+=:加等于
-
-=:减等于
-
*=:乘等于
-
/=:除等于
-
%=:取余等于
-
++:自加1
- i++先计算表达式的值,然后在++(加一)
- ++i是先++(加一),在计算表达式的值
-
--:自减1
-
逗号运算符
int a=2; int b=3; int c=4; int d=5; int i=(a=b,c+b); //逗号表达式先求逗号左边的值,然后求右边的值,整个语句的值是逗号右边的值
运算符优先级
优先级 | 运算符 | 结合性 |
---|---|---|
1 | ++(后缀),--(后缀),()(调用函数),{}(语句块),.,-> | 从左到右 |
2 | ++(前缀),--(前缀),+(前缀),-(前缀),!(前缀),~(前缀),sizeof,*(取指针值),&(取地址),(type)(类型转化) | 从右到左 |
3 | *, /, % | 从左到右 |
4 | +,- | 从左到右 |
5 | << >> | 从左到右 |
6 | < > <= >= | 从左到右 |
7 | == != | 从左到右 |
8 | & | 从左到右 |
9 | ^ | 从左到右 |
10 | | | 从左到右 |
11 | && | 从左到右 |
12 | || | 从左到右 |
13 | ? | 从右到左 |
14 | =,*=,%=,+=,-=,<<=,>>=,&=,|=,^= | 从右到左 |
15 | ,(逗号运算符) | 从左到右 |
- 复合语句
- {}代码块
- 空语句
- 只有一个;号的语句就是空语句,空语句在C语言里面和合法的,并且是在某些场合必用的
- 类型转换
- 隐式转换
- 强制转换