C语言操作符总结

操作符有以下分类:

算术操作符
移位操作符
位操作符
赋值操作符
单⽬操作符
关系操作符
逻辑操作符
条件操作符
逗号表达式
下标引用、函数调用和结构成员

一、算术操作符

+    -   *   /   %

1. 除了%操作符之外,其他的几个操作符可以作用于整数和浮点数。

2. 对于/操作符如果两个操作数都为整数,执行整数除法。而只要有浮点数执行的就是浮点数 除法。
3. %操作符的两个操作数必须为整数。返回的是整除之后的余数。

二、移位操作符
<< 左移操作符
>> 右移操作符

个人小体会:如果分不清的话,看箭头朝向哪个方向就是向哪个方向移动。

对于右移移动规则分为两种:

1.逻辑移位:左边用0填充,右边丢弃;

2.算术移位:左边用原值额符号位填充,右边丢弃;

三、位操作符

&    // 按位与

|      // 按位或
^    // 按位异或
注:他们的操作数必须是整数。

四、赋值操作符

赋值操作符就是进行赋值。对于变量来说,赋值之后值就变化了。

复合赋值符

+=
-=
*=
/=
%=
>>=
<<=
&=
|= =

其实都是相通的。理解了+=就理解了其他的

五、单目操作符

!             逻辑反操作

-             负值
+            正值
&           取地址
sizeof    操作数的类型⻓长度(以字节为单位)
~           对⼀一个数的⼆二进制按位取反
--           前置、后置--
++         前置、后置++
*            间接访问操作符(解引⽤用操作符)
(类型)     强制类型转换

其中要区分sizeof和strlen的区别。就相当于sizeof可以求总长度,strlen是实际长度。

其中和a++和++a的区别是是否是先使用再相加。

六、关系操作符

>        >=          <          <=                        !=      用于测试“不相等”                     ==      用于测试“相等”

七、逻辑操作符

&&          逻辑与   (两个条件中前面的一个为假,后面的就不用判断了)                          
||              逻辑或   (两个条件中前面的一个为真,后面的就不用判断了)

八、条件操作符

exp1 ? exp2 : exp3(表达式1为真,执行表达式2,否则执行表达式3);

九、逗号表达式

exp1, exp2, exp3, …expN
逗号表达式,就是用逗号隔开的多个表达式。 逗号表达式,从左向右依次执行。整个表达式的结果是最后⼀个表达式的结果。
十、下标引⽤、函数调用和结构成员
1.[ ]
操作数:⼀个数组名 + 一个索引值
2.( ) 函数调用操作符 接受一个或者多个操作数:第一个操作数是函数名,剩余的操作数就是传递给函数的参数。
3.访问一个结构的成员 . 结构体.成员名 -> 结构体指针->成员名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值