0基础学习——了解操作符的那些事(一)

操作符分类

在这里我们有:算数操作符 移位操作符 等
今天我们就先来讲这几个操作符

1. 算数操作符

这是我们加 ,减 ,乘 ,除 ,取模(取余)
在这里插入图片描述

加减乘 就没有必要讲了,叫你奶奶来都会。

讲一下 / 除法操作符

这里是引用
这里的除号就是我们上小学学的一个意思。
备注:对于除法操作符,两边的操作数都是整数,所以执行起来的是整数除法。
如果想要计算出小数,除号的两端至少有一个操作数是浮点数

在这里插入图片描述> 那如果想计算出小数点后面一位呢?

直接在lf前面加.1,就可以了。

%取模(取余)

这个操作符计算的是整除之后的余数
在这里插入图片描述
取模操作符的两边的操作数只能是整数
在这里插入图片描述
不然会报错哦

2. 移位操作符

在这里插入图片描述

二进制(小插曲)

讲到移位操作符,那就必须要讲解一下2进制了
移(2进制)位操作符
整数的2进制表示形式,有3种
原码
反码
补码
内存中的存储其实是:补码的二进制
移动的时候,移动后都是补码

12——数值

在这里,我们可以有都种表达方式
2进制:1100
8进制:14
10进制:12
16进制:c

正数

正数的原码,反码,补码是相同的
因为是整型,而且占4个字节(32bit)

第一个数字是0——为正数

负数

同理可得:第一个数字是1——为负数
负数的原码,反码,补码是要经过计算的
反码是原符号位不变,其他位按位取反,就是反码
补码是反码+1
在这里插入图片描述
其实反过来也可以
在这里插入图片描述
// //10000000000000000000000000001010 - 原码
// //11111111111111111111111111110101 - 反码
// //11111111111111111111111111110110 - 补码
//
// //11111111111111111111111111110110 - 补码
// //10000000000000000000000000001001
// //10000000000000000000000000001010 - 原码
//
// int b = -10;
说明这几条路都是行得通的哦在这里插入图片描述

左移动操作符

在这里插入图片描述
直接上图
在这里插入图片描述
这就是具体原理
在这里插入图片描述
a<<1的结果是移动之后的效果,但是a的是不变的。

  比如:int a = 10;
  	   int b = a+2;	

对于负数打印出来的是原码,正数三个码都是一样的,无所谓~~~

右移操作符

这里是引用
算数操作符
左边用原来的符号填补,右边就嘎了
在这里插入图片描述

下面就来直接上手
在这里插入图片描述
下面就让我来讲解一波:先看a(负数),因为存储的,运行的是补码,所以先要从原码变换到补码。然后在向右移动,最后惊奇的发现移了好像没移(对于这个数字)。后面打印出来的是需要原码的哦,再变换,好家伙又回去了。在这里插入图片描述

为什么有要变来变去呢? 看图就知道了,内存中的值还真的是这样在这里插入图片描述>

这里说明一下
在这里插入图片描述在这里插入图片描述
你说这是个啥玩意蛮

3. 位操作符

在这里插入图片描述

& 按位与 &

先来说明按位与操作符,对于的二进制位有0,则为0,两个同时为1才为1
在这里插入图片描述注意最后为正哦

按位或 |

按2进制位或
对应的二进制位有1则为1,两个同时为0则为0
在这里插入图片描述

按位异或 ^

按2进制位异或
对应的二进制位:相同为0,相异为1
在这里插入图片描述

下面我们来一个题

一道变态的面试题 不能创造临时变量(第三个变量),实现两个数的交换
这里我们先就来一个第三个变量,酱油瓶tmp
在这里插入图片描述这不就可以了呀

还有一种小天才的写法
在这里插入图片描述

注意:如果数字过大就栈溢出了。但是这个数学思路还是表示肯定的

下面我们就用异或操作符来写
在这里插入图片描述讲解:
在这里插入图片描述
所以按位异或是支持交换律
异或操作符交换2个变量
但是 可读性差,效率也不如使用临时变量的方法
而且只能针对整数的交换
酱油瓶tmp才是王道

赋值操作符

赋值操作符是一个非常不错的操作符,
他可以让你得到一个你满意的值,也就是你可以给自己重新赋值。在这里插入图片描述

在这里插入图片描述
注意:
在这里插入图片描述
一定要规范写作
不然就是没有初始化

复合赋值符

在这里插入图片描述
学完前面的,这个综合起来也就简单
在这里插入图片描述

单目操作符

在这里插入图片描述

a +1; + a 1 操作符有2个操作数,为双目操作符
单目操作符,只有一个操作数
在这里插入图片描述
然后我们再补充一下:布尔类型
注意引用头文件
在这里插入图片描述

在这里插入图片描述

闰年也可以判断在这里插入图片描述
最后请添加图片描述

unsigned与unsigned 似乎与2进制有关,具体看图去请添加图片描述![请添加图片描述](https://img-blog.csdnimg.cn/3fac6536855a43d6aec34af1d9ea8f15.png

请添加图片描述请添加图片描述
最后居然不是-10请添加图片描述
下面来说一下解引用操作符
请添加图片描述

%p 是搞地址的
%c 是搞字符的

所以就可以推出*p是把它变回去吗?
请添加图片描述
现在知道了吧, pa 是解引用操作
int
* pa才是储存地址的
请添加图片描述

强制转换类型

这个就是你在垃圾桶里发现一个快递单,上面有张三地址,后面找到张三说我找到你家了
请添加图片描述

这个具体好像我上一篇三子棋也有讲请添加图片描述
这里的a可以不用括号,这是为什么呢?
请添加图片描述

请添加图片描述
请添加图片描述
但是如果int,上面不加括号会怎么样?
在这里插入图片描述

怎么能上类型呢?

这是全面表示
请添加图片描述

下面看看打印的是什么请添加图片描述
2和5哦请添加图片描述因为在便译那一步的时候就结束计算了请添加图片描述
请添加图片描述为2请添加图片描述
请添加图片描述自己看看吧

请添加图片描述多个也不要怕哦
请添加图片描述
请添加图片描述
请添加图片描述这些都是前面说过的哦

下面我们来几首歌,消去疲惫吧

贝加尔湖畔
在我的怀里 在你的眼里
那里春风沉醉 那里绿草如茵
月光把爱恋 洒满了湖面
两个人的篝火 照亮整个夜晚
多少年以后 如云般游走
那变换的脚步 让我们难牵手
这一生一世 有多少你我
被吞没在月光如水的夜里
多想某一天 往日又重现
我们流连忘返 在贝加尔湖畔
多少年以后 往事随云走
那纷飞的冰雪容不下那温柔
这一生一世 这时间太少
不够证明融化冰雪的深情
就在某一天 你忽然出现
你清澈又神秘 在贝加尔湖畔
你清澈又神秘 像贝加尔湖畔

阿刁
阿刁住在西藏的某个地方
秃鹫一样 栖息在山顶上
阿刁 大昭寺门前铺满阳光
打一壶甜茶 我们聊着过往
阿刁 你总把自己打扮的像
男孩子一样 可比格桑还顽强
阿刁 狡猾的人有千百种笑
你何时下山 记得带上卓玛刀
灰色帽檐下 凹陷的脸颊
你很少说话 简单的回答
明天在哪里 谁会在意你
即使死在路上
(童声)格桑 妮可 阿七 石榴 东硕 大冰 安子 浮游
(童声)赵雷 三文鱼 胖子 小柳
(童声)卓玛 阿达 英子 回锅肉
阿刁 明天是否能吃顿饱饭
你已习惯 饥饿是一种信仰
阿刁 不会被现实磨平棱角
你不是这世界的人 没必要在乎真相
命运多舛 痴迷 淡然
挥别了青春 数不尽的车站
甘于平凡却不甘平凡的腐烂
你是阿刁 你是自由的鸟
灰色帽檐下 凹陷的脸颊
你很少说话 简单的回答
明天在哪里 谁会在意你
即使死在路上
命运多舛 痴迷 淡然
挥别了青春 数不尽的车站
甘于平凡却不甘平凡的腐烂
你是阿刁
阿刁 爱情是粒悲伤的种子
你是一棵树 你永远都不会枯

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

  • 56
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 58
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 58
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

躺平又起来的小萍子

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

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

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

打赏作者

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

抵扣说明:

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

余额充值