了解操作符的那些事(二)


前言:

~ 对一个数的二进制按位取反

*间接访问操作符(解引用操作符)
请添加图片描述这里的int对应的是整型,而a的赋值是小数 这样运行的话可能会丢失数据请添加图片描述这样就没有问题了,打印为3,强制转换。请添加图片描述同样这个无符号整型也是一样。

sizeof 和 数组

这里是引用我们看看最后打印的是什么?

第一个计算的是数组的大小即10乘4=40
第二个也是一样10乘1=10
因为类型不同,即所乘的字节不一样
我们看看后面的
第三个为数组传参,形参可以写成数组,也可以写成指针,但本质上是指针,即打印出来为4/8 看是x86还是x64
第四个同理可得,4/8

下面看一个提问

这里是引用这里是可以的哦
在这里插入图片描述看看运行的行云流水
请添加图片描述本质其实都是一样的
arr[i] 其实就是 *(arr+i)
我由第一个地址就可以顺藤摸瓜知道后面全部的

关系操作符

在这里插入图片描述这比较简单,就不讲了,要注意==和=的区别

逻辑操作符

这里是引用注意区分& | 与他们的区别就可以了请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
同样判断润年也可以
请添加图片描述这样就比较简洁

下面就上一个360笔试题
在这里插入图片描述1 2 3 4
看看你对了吗?
a++ 为后置加加,先应用后++,即 (a++)为0,a为1,又为&& 操作符,有一个为假就是全假,后面的就没有必要再算了。请添加图片描述请添加图片描述
a=1呢?
请添加图片描述
2 3 3 5
这次就是都为真,全部都要计算。

改 || 呢?请添加图片描述
请添加图片描述

这个是有真就是真,但是后面就不给你计算了,也称为短路请添加图片描述
这个呢?请添加图片描述
现在知道电脑也爱偷懒了在这里插入图片描述

条件操作符

这里是引用
具体运行就是这样
请添加图片描述
这个也叫三目操作符,让我想起来了三土老师
在这里插入图片描述是不是感觉太繁杂了
请添加图片描述
在这里插入图片描述所以正确地学习应该是越学越简易才对。

逗号表达式

在这里插入图片描述
在这里插入图片描述要记住最后的结果是最后一个表达式的结果哦请添加图片描述13
请添加图片描述再来看看这个
请添加图片描述
简化
请添加图片描述

下标引用,函数调用和结果成员

下标引用

在这里插入图片描述
请添加图片描述

函数调用

接受一个或者多个操作符,第一个操作符就是函数名,剩余的操作符

访问一个结构的成员

在这里插入图片描述
在这里插入图片描述
有内置类型和自定义类型
在这里插入图片描述请添加图片描述加一个书名号跟加严谨
在这里插入图片描述在这里插入图片描述

在这里插入图片描述在这里插入图片描述
下面的知识点是以前讲过
看看
请添加图片描述
这个是值传递,所以打印的还是20

在这里插入图片描述这个就是传址了,最后为18

表达式求值

在这里插入图片描述

隐式类型转换

请添加图片描述
看看这个是不是打印130呢?
那这就错了,请添加图片描述请添加图片描述char不是整型,3属于int,char与int所存储的字节(比特)不同,硬是要表示的话,就戳断。还有一个叫整型提升
请添加图片描述请添加图片描述

请添加图片描述
在相加的时候就需要整体提升了。在这里插入图片描述是0就填0,是1就填1.

请添加图片描述后面打印的是10进制整数,所以就是三码的转换。
请添加图片描述

这才是真正的结果。为什么不打印130呀?因为这是有范围的哦
请添加图片描述就让我来告诉你为什么范围是这样
请添加图片描述
这表示的是补码哦请添加图片描述
最后正负一起就是
请添加图片描述
下面我们来看看无符号的char
请添加图片描述
请添加图片描述他是变化3个的

请添加图片描述

这样理解也是可以的
主要还是要知道整型提升这个事

下面再来看一题

请添加图片描述
请添加图片描述其实打印的是c,因为int不用提升呀,其他两个一提升就都不一样的了,就这么简单。
在这里插入图片描述
再来一个题看看
请添加图片描述第一个就是普通数组大小,
请添加图片描述后面的看看,都显示了int整型了,这不就明白了

算术转换

在这里插入图片描述
在这里插入图片描述

请添加图片描述

操作符的属性

在这里插入图片描述

其实就是不要乱搞,该用括号的用括号,请添加图片描述看看,这个如果不是数字呢?
请添加图片描述看看如果搞&& 和 || 这俩个让电脑偷懒,那不就完了。

请添加图片描述

看看是先c 还是先–c,后影响c。这结果都是不一样的哦
请添加图片描述这个就是闲的没事做。
请添加图片描述这个你知道先搞哪个fun() 吗?因为static 出函数是不会消失的,累加。
请添加图片描述
请添加图片描述
看看这两种编译器运行的结果都是不一样的,
请添加图片描述
想到了一个隐藏的bug,自己使用专属编译器,是正确的的结果。如果别人要白嫖你代码,那他就也是一样的编译器。就给自己加码了,哈哈

在这里插入图片描述
最后还是要按规范写代码

守得云开见月明
请添加图片描述

评论 41
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

躺平又起来的小萍子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值