C++中 * *的用法与区别----实操才能看明白
&
&为取址符,就是表示a这个变量的地址
int a;
cout<<a<<endl<<&a<<endl;
a=3;
cout<<a<<endl<<&a<<endl;
-----------------------
0
0x6ffe1c
3
0x6ffe1c
可见,变量a在定义时系统就给他赋了初值,在我们给他赋值后,其值虽然变了,但内存地址并没边。相当于房子的人变了,但房子在那并没动
*
*就是指针变量的标识符,本质上就是个变量类型。比如int表示整形,只能接受整形数字,*标志指针型,只能接收指针。int *b是b用来接收int类型的指针。
int a;
int *b;
b = &a;
cout<<a<<endl<<&a<<endl<<b<<endl<<*b<<endl<<&b<<endl<<endl;
a= 666;
cout<<a<<endl<<&a<<endl<<b<<endl<<*b<<endl<<&b<<endl<<endl;
*b = 888;
cout<<a<<endl<<&a<<endl<<b<<endl<<*b<<endl<<&b<<endl<<endl;
int c = 999;
*b = c;
cout<<a<<endl<<&a<<endl<<b<<endl<<*b<<endl<<&b<<endl<<endl;
---------------------------------------------------------------------
0
0x6ffe0c
0x6ffe0c
0
0x6ffe00666
0x6ffe0c
0x6ffe0c
666
0x6ffe00888
0x6ffe0c
0x6ffe0c
888
0x6ffe00999
0x6ffe08
0x6ffe08
999
0x6ffe00
可见b是有自己的地址的,将a的地址赋值给b后,a和b就是一块地址了,操作a,b指向a的地址,其相应的值会随着a改变,前面说了b是一个数据变量,是有自己的内存地址的,所以我们也不能给b赋其他类型的值,但这里b代表的是int a,所以b=888;相当于给a赋值888。
*&
&p是一个内存地址,*&p表示&p指向地址内存空间的值,如int *a ;a=&p
在这里 a表示p的地址,*a就是p的数值
,*&p就是*a,表示a的地址存的值
可以看下面的例子,更好理解
#include <iostream>
using namespace std; void find(int arr[] )
{cout<<sizeof(arr)<<endl;int len = sizeof(arr) / sizeof(arr[0]);cout<<sizeof(arr[0])<<endl;cout<<len<<endl;
}
void swap(int *a,int *b){int *temp=a;a=b;b=temp;
}void swap1(int *a,int *b){int temp=*a;*a=*b;*b=temp;
}
void swap2(int &a,int &b){int temp=a;a=b;b=temp;
}
void swap3(int *&a,int *&b){int *temp=a;a=b;b=temp;
}int main()
{int a = 1;int b = 6;int *c = &a;int *d = &b;
/* swap3(a,b) swap3(a,b);;报错,只能接收地址变量
这里原来是c指向a,b指向d,经过swap3之后, c指向b,b指向c,交换的是指针的指向,而不是原来的值
*/cout<<a<<b<<endl<<*c<<*d<<endl;cout<<&a<<endl<<&b<<endl<<&c<<endl<<&d<<endl<<c<<endl<<d<<endl;swap3(c,d);cout<<a<<b<<endl<<*c<<*d<<endl;cout<<&a<<endl<<&b<<endl<<&c<<endl<<&d<<endl<<c<<endl<<d<<endl;a = 1;b = 6;swap(a,b);cout<<a<<b<<endl;a = 1;b = 6;swap1(&a,&b);cout<<a<<b<<endl;a = 1;b = 6;swap2(a,b);cout<<a<<b<<endl;
}
C++中 * *的用法与区别----实操才能看明白相关推荐
- CSS中定位(带你实操代码掌握固定定位、绝对定位与相对定位(子绝父相))
https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 如有转载,请注明出处(如不注明,盗者必究) 目录 固定定位 绝 ...
- 如何浅显得理解风控模型中的特征筛选|附实操细节(全)
今天我们综合了星球同学的一些需求,给大家梳理了这样一篇风控建模中特征筛选,希望对所有的风控人员在模型开发上都有所启发. 本文,我们会跟大家介绍特征选择的内容,包括其中的重点问题跟注意的细节. 因为完整 ...
- 从原理到实操,看当前最佳的YOLO V4是如何炼成的?
YOLO系列的网络都有一个共同的特点,即追求网络精度也追求网络速度,YOLO V4在此基础上又多了一个追求,那就是降低硬件要求. YOLO V4 的开发历程很有意思,其中评估.修改和整合了很多有趣的新 ...
- 【实操】看了太多公式概念?你该学会怎么用T检验了!
相信看到这篇文章的同学,一定搜了很多次下面的关键词 "T检验"."Matlab"."P值"."T值" 网上公式一大堆,含 ...
- 全栈工程师对Python面试中is和==的区别做出解释!看完真的学到了
面试实习生的时候,当问到 is 和 == 的区别时,很多同学都答不上来,搞不清两者什么时候返回一致,什么时候返回不一致.本文我们来看一下这两者的区别. 我们先来看几个例子: 上面的输出结果中为什么有的 ...
- 一文带你学会微信V3版本下单支付、退款、关单流程代码实操
目录 开篇介绍 一.微信支付-Maven依赖加入和代码参数准备 二.商户私钥证书代码读取 三.微信订单支付系列接口URL配置 四.快速验证统一下单接口 五.查询订单支付状态验证 六.关闭订单状态验证 ...
- 「动手学深度学习」在B站火到没谁,加这个免费实操平台,妥妥天花板!
论 AI 圈活菩萨,非李沐老师莫属. 前有编写「动手学深度学习」,成就圈内入门经典,后又在B站免费讲斯坦福 AI 课,一则艰深硬核讲论文的视频播放量36万,不少课题组从导师到见习本科生都在追番. 如此 ...
- 机器学习的入门平台天花板,还可免费实操经典教程,确实也没谁了
韩智 边策 发自 凹非寺 量子位 报道 | 公众号 QbitAI 论 AI 圈活菩萨,非李沐老师莫属. 前有编写「动手学深度学习」,成就圈内入门经典,后又在B站免费讲斯坦福 AI 课,一则艰深硬核讲论 ...
- 「动手学深度学习」在B站火到没谁,加这个免费实操平台,妥妥天花板
论 AI 圈活菩萨,非李沐老师莫属. 前有编写「动手学深度学习」,成就圈内入门经典,后又在B站免费讲斯坦福 AI 课,一则艰深硬核讲论文的视频播放量36万,不少课题组从导师到见习本科生都在追番. 如此 ...
最新文章
- 我有一个很好的思维习惯-反思
- 纯css3代码写下拉菜单效果
- 计算机存储盘教程,计算机操作系统 --- 磁盘存储器
- 数据回发时,维护ASP.NET Tree控件位置
- 全国计算机等级考试题库二级C操作题100套(第76套)
- js json过滤_如何在浏览器不崩溃的情况下过滤 200 万行数据?
- 【youcans 的 OpenCV 例程200篇】144. 基于灰度形态学的纹理分割
- 专访第一棋牌创始人陈总:_如何解雇自己:创始人的困境
- C# 读取Excel表格中的数据
- EPUB阅读工具-读者推荐
- matlab九节点网络仿真问题,三机九节点电力系统仿真matlab
- pdf转换软件注册码
- STM8单片机的启动过程。
- mysql 三角函数_三角函数公式
- Proteus,keil5仿真运行stm32程序,流水灯详细教程
- 得物数据抓取+参数加密解析
- 修理牧场( 哈夫曼算法 ,贪心 )
- iphone 检测屏幕触摸事件
- 状态机实现的三种方法-C语言
- FX5U远程调试PLC远程监控方案
热门文章
- 怎么将tflite部署在安卓上_tensorflow从训练自定义CNN网络模型到Android端部署tflite...
- python word模板 图_科学网—Python绘制可插入Word的高清矢量图(SVG转EMF) - 任晓东的博文...
- 属性定义为 not null unique_Spring Data with MySQL (实体定义)
- 整个电脑键盘被锁住了_蜗居共享经济,如何彻底榨干你家里的电子设备|鼠标|共享经济|键盘|电脑桌|显示器|升降支架...
- openssh8.6升级修复(CVE-2020-15778)(CVE-2018-15919)(CVE-2017-15906)等漏洞
- oracle 数据树,ORACLE 树形数据
- java入门第二天课程,Java菜鸟培训第二天
- 小学音乐教学和计算机的融合,小学学科教学与计算机深度融合赛课心得体会(共4篇)...
- clistctrl 列不可按 -baijiahao_好吃到让人尖叫的日本人气美食 | 不可错过的京都吃喝地图...
- P3275 [SCOI2011]糖果