今天就让小杨带你走进操作符小篇章。
操作符小目录
- 算术操作符
- 移位操作符
- 位操作符
- 赋值操作符
- 单目操作符
- 关系操作符
- 逻辑操作符
- 条件操作符
- 逗号表达式
- 下标引用、函数调用和结构成员
一、算数操作符
+ - * / % |
1、两边为整时所得结果无小数,执行整数除法,当需要小数时,符号两边至少有一个浮点数,才会执行浮点数除法。
2、%操作符的两个操作数必须为整数。返回的为整除之后的余数。
3、除%操作符外,其他操作符皆可作用于整数和浮点数。
二、移位操作符
注:移位操作符的操作数只能为整数。
<< 左移操作符 |
>> 右移操作符 |
1、左移操作符
移位小规则:左边丢弃,右边补0(移补码,打印原码)。
2、右移操作符
移位小规则:【取决于编译器】
算数右移:右边丢弃,左边补原符号位(主选这个哦)。
逻辑右移:右边丢弃,左边补0。
注意:对于移位操作符,不要移动负数位,这个是标准未定义。
例如:
int num = 10;
num >> -1;//error
三、位操作符
& 按位与 |
| 按位或 |
^ 按位异或 |
注意:其操作符必须为整数 |
例子:
四、4.1 赋值操作符
赋值操作符是可以让你得到一个你之前不满意但现在满意的值。也就是你可以自己重新赋值。
可连续赋值:
int a = 10;
int x = 0;
int y = 20;
a = x = y + 1;
但有更清晰的写法:
x = y + 1;
a = x;
4.2 符合赋值符
+= | -= | *= | /= | %= |
>>= | <<= | &= | ^= | |= |
五、单目操作符
! 逻辑反操作 |
- 负值 |
+ 正值 |
& 取地址 |
sizeof 操作数的类型长度(以字节为单位) |
~ 对一个数的二进制按位取反 |
-- 前置、后置-- |
++ 前置、后置++ |
* 间接访问操作符(解引用操作符) |
(类型) 强制类型转换 |
六、关系操作符
> | >= | < |
<= | !=(测试不想等) | ==(测试相等) |
注意:这个不能用来判断字符串长度。
还有在编程中可不要将==与=写错哦!
七、逻辑操作符
&& 逻辑与 |
|| 逻辑或 |
上代码
八 、条件操作符
exp1 ? exp2 : exp3 |
看代码
九、逗号表达式
exp1,exp2,exp3,…… |
从左向右执行,整个表达式的结果是最后一个表达式的结果。
十、下标引用,函数调用和结构成员
10.1
[ ] 下标引用操作符
int arr[10];//创建数组
arr[9] = 10;
操作数为一个数组名+一个索引值。
10.2
()函数调用操作符,接受一个或者多个操作数:第一个操作数是函数名,剩余的操作数就是传递给函数的参数。
10.3
.结构成员
结构体.成员名
-> 结构体指针->成员名
最后,这篇文若是帮助到你我会很开心,但要是其中有任何问题希望大家可以评论指正。