深挖C++赋值

详解赋值

cpp 复制代码
const int a = 10;
int b = a;

&a

0x000000b7c6afef34 {56496}

&a

0x000000b7c6afef34 {10}

&b

0x000000b7c6afef54 {10}

总结: int a = 10 是指在内存中(栈)中创建一个int (4 byte)大小的空间,以小端字节序存储(低位在前,高位在后),即:0x0A 0x00 0x00 0x00,a 本身是一个 变量名,它代表了分配在栈上的那块内存空间。

内存地址:当你使用变量 a 时,你实际上是在使用栈中为 a 分配的 内存空间。你可以通过 取地址操作符 & 获取这个内存地址:&a。

int b = a; 不是将 a 对应的内存地址 新添一个变量名b指向它( const int& b = a;),而是在栈上新建一个 int 类型的内存块, 将 a 的值拷贝到其中。

相关推荐
yerennuo3 分钟前
windows第七章 MFC类CWinApp介绍
c++·windows·mfc
齐雅彤4 分钟前
Bash语言的并发编程
开发语言·后端·golang
九月十九6 分钟前
AviatorScript用法
java·服务器·前端
AitTech13 分钟前
C#性能优化技巧:利用Lazy<T>实现集合元素的延迟加载
开发语言·windows·c#
翻晒时光14 分钟前
深入解析Java集合框架:春招面试要点
java·开发语言·面试
峰子201220 分钟前
B站评论系统的多级存储架构
开发语言·数据库·分布式·后端·golang·tidb
sin220125 分钟前
MyBatis-Plus的插件
java·mybatis
小丁爱养花32 分钟前
Spring MVC:综合练习 - 深刻理解前后端交互过程
java·spring·mvc
ExRoc38 分钟前
蓝桥杯真题 - 填充 - 题解
c++·算法·蓝桥杯
Channing Lewis1 小时前
python如何使得pdf加水印后的大小尽可能小
开发语言·python·pdf