关于C语言的学习小结(2)——运算符

导读

什么是运算符?运算符有什么用?有哪些运算符?🤔🤔🤔

目录

表达式

运算符

算术运算符

关系

逻辑

自增自减

赋值

复合赋值

逗号

条件

求字节数


正文

  • 表达式

  1. 定义:由操作数和运算符组成
  2. 注:操作数可以是变量也可以是常量
  • 运算符

  1. 定义:表示某种运算功能的符号
  2. 分类:①单目运算符②双目运算符③三目运算符
  3. 优先级:运算的先后顺序
  4. 结合性:优先级相同时运算方向11b6a64a80bc4a539dbc0f89e8d28a7d.jpg
  5.  注①单目,赋值,条件为右结合②单目高于双目高于三目高于赋值③双目中算数大于移位大于关系大于位逻辑大于逻辑
  • 算术运算符

  1. 包括:①加(+)②减(-)③乘(*)④除(/)⑤求余(%)
  2. 结果:求余答案的正负与前者相同
  3. 优先级:③④⑤大于①②
  4. 结合性:从左至右
  5. 注:1/2=0(一除以二为零点五,但是1和2都为整型,故答案也应为整型,即零)1.0/2=0.5(1.0为double型,2为int型,两者类型不同,答案为所占字节数大的,即double行,故答案为0.5)e563ade5d2fe41bf95ca53a448f272cc.jpg

  • 关系

  1. 包括:①大于(>)②小于(<)③等于(==)④大于等于(>=)⑤小于等于(<=)⑥不等于(!=)

  2. 结果:成立为1,不成立为0
  3. 优先级:①②④⑤大于③⑥
  4. 结合性:从左至右
  • 逻辑

  1. 包括①与(&&)②或(||)③否定(!)
  2. 结果:两者均正与为一其余皆为零,两者均零或为零其余皆为一,正否定为零,零否定为一
  3. 优先级:!大于&&大于||
  4. 结合性:从左至右
  5. 注:①与的左侧为假,则不会进行右侧②或的左侧为真则不会进行右侧
  1. 包括①按位与(&)②按位或(|)③按位异或(^)④按位取反(~)⑤左移(<<)⑥右移(>>)
  2. 结果:将整数转换成二进制再就行运算
  3. ①为逐位进行与运算
  4. ②逐位进行或运算
  5. ③逐位进行按位异或运算(相异为真,相同为假)
  6. ④逐位进行取反运算(0为1,1为0)
  7. ⑤a<<n,a的二进制数向左移n位,a的前n位舍去,后面用0补齐
  8. ⑥a>>n,a的二进制数向右移n位,a的后n位舍去,前面用0补齐(有符号补符号,无符号补零)
  • 自增自减

  1. 包括①自增(++)②自减(--)
  2. 结果:①i++,使用i之后再使i的值加1②++i,先使i的值加
  3. 结合性:从右至左
  • 赋值

  1. 包括赋值号(=)
  2. 优先级:!>算术>关系>&&>||>赋值
  3. 结合性:从右至左
  4. 注:左边一定为变量,且右边表达式的计算结果的数据类型应与变量的数据类型相同
  • 复合赋值

  1. 由赋值运算符前加一个双目运算符组成
  2. 优先级:与=相同
  3. 结合性:从右至左
  4. 例a+=b-1等价于a=a+(b-1)
  • 逗号

  1. 包括逗号(,)
  2. 优先级:最低
  3. 结合性:从左至右
  4. 结果:最后一个表达式的值
  5. 作用:将表达式分隔开
  6. 注:C语言常将逗号作为分隔符
  • 条件

  1. 包括条件运算符(?:)
  2. 优先级:逻辑>条件>赋值
  3. 结合性:从右至左
  4. 作用:判断结果,如果是第一个是真,则进行第二个,否则进行第三个
  • 求字节数

  1. 包括sizeof()
  2. 形式①sizeof(数据类型)②sizeof(变量名)③sizeof 变量名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值