------<a href="http://write.blog.csdn.net/postedit">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
第一讲-运算符的概念与分类
1、基本概念
例如:
int num = 10;
此处的 =即为运算符
那么什么是运算符呢?
运算符,故名思议就是进行运算的符号。或者说,告诉计算机如何进行运算的符号,例如求和的数学运算符、比较的关系运算符、求真假的逻辑运算符等。
运算符都与数据连接在一起,操作对应的数据,而这个数据称作操作数。
2、分类
按照功能划分
1)算术运算符
2)关系运算符
3)逻辑运算符
4)位运算符
按照操作数的个数划分
1)单目运算符
2)双目运算符
3)三目运算符
3、运算符优先级和结核性
优先级 | 运算符 | 含义 | 运算数 | 结合方向 |
1 | () [] -> . | 圆括号 下标运算符 指向结构体成员运算符 结构体成员运算符 |
| 从左至右 |
2 | ! ~ ++ -- - (类型) * & sizeof | 逻辑非运算符 按位取反运算符 自增运算符 自减运算符 负号运算符 类型转换运算符 指针运算符 地址运算符 长度运算符 | 1(单目运算符)
| 自右向左 |
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 | , | 逗号运算符 |
| 从左至右 |
出现在前面的运算符,优先级高
口诀:
初等单双目,关系逻辑忙。
条件赋逗号,熟记心不慌。
02-算术运算符
算术运算符就是中学学习过的数字的加减乘除取余数
注意:
1)运算数类型应该一致,赋值运算也应注意类型
2)求余数只能用于整数上
03-赋值运算符
赋值运算符将符号右边的数据赋值给左边的变量。
赋值运算符分为:简单赋值运算符,复合赋值运算符
04-自增运算符
i++; //表示运算之后自增1
i--; //表示运算之后自减1
--i; //表示运算之前自减1
++i; //表示运算之后自增1
05-sizeof运算符
sizeof运算符是一个单目运算符,其目的是计算数据或类型所占字节长度,单位为字节。
语法为:sizeof(表达式或类型)
注意:最好使用圆括号,但是sizeof不是函数
06-逗号运算符
逗号运算符连接表达式,就得到逗号表达式,表达式从左往右运算符,该表达式的值为最后一个表达式的值。
在c语言中,0为假,其余的都为真