总结C语言操作符

本文详细介绍了C语言中的各类操作符,包括算术操作符、移位操作符、位操作符、赋值操作符等,并解释了它们的功能及用法。此外还探讨了操作符的优先级、结合性及求值顺序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C语言操作符:

1、算术操作符:+  -  *  %  /

注:%(只可以作用于整数,返回的是整数余数)其他可以作用于整数与浮点数

2、移位操作符:

例如:a<<1: a向左移动一位

          a>>2:a向右移动两位

其中右移包括:(1)算术右移:右边丢弃,左边补符号位

                        (2)逻辑右移:右边丢弃,左边补0

注:(1)移位操作符不移负数位

       (2)移位时自身不改变,对于移位采用二进制移位

3、位操作符:&:按位与

                       |:按位或

                      ^:按位异或(相同为0,异同为1)

注:操作数为整数

4、赋值操作符:

例如: a = b = b * 3  自左向右

5、复合操作符: +=  -=  *=  /=  %=  >>=  <<=  &=  |=  =

例如:a = a + 10 可以等同于  a += 10

6、单目操作符: !     逻辑反操作;   -     负值;   +    正值;   &    取地址;

                          sizeof   操作数的类型长度;  --   前置后置--; ++  前置后置++;

                          *    间接访问操作符;    (类型)   强制类型转换;~  按位取反;

(1)sizeof(数组名):计算数组的总大小,不是函数

(2)++:1.  后置++(先使用后增加)

                 2.  前置++(先增加后使用)

         --   :1.  后置--   (先使用后减少)

                   2.   前置--   (先减少后使用)

(3) *   :  例如: int  a  =  10;

                               int *  pa  =  & a;

                                     *  pa  =  20;

(4) (类型): 例如 : int  a  =  10 ;

                                        a  =  ( int ) 3.14 ;

7、关系操作符: >  >=  <  <=  !=  ==

注:  字符串不可以用关系操作符比较 要用 strcmp();  

         “==  不同于  “=”

8、逻辑操作符: &&  逻辑与

                            ||     逻辑或

区别: a  &&  b : 判断a、b的真假;  

           a & b:用二进制判断;

9、条件操作符:exp 1 ?  exp 2 : exp 3

注解:判断 exp 1真假;若为真,输出exp 2;若为假,输出exp 3;

10、逗号表达式:exp1,exp2,..........expN

注:从左往右依次执行,整个表达式结果是最后一个表达式的结果

11、下标引用、函数调用、结构成员

(1)下标引用:[]  操作数:例如  arr[4]:  2个操作数

(2)函数调用:至少有一个操作数

(3)结构成员:  .结构体. 成员名

                            -> 结构体指针 -> 成员名

操作符属性:1、操作符的优先级

                     2、操作符结合性

                     3、是否控制求值顺序




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值