深挖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 的值拷贝到其中。

相关推荐
LingzhiPi几秒前
零知派ESP32--AS5600磁吸旋钮音量控制器
c++·单片机·嵌入式硬件
wddptwd282 分钟前
android studio 报错怎么处理 java.lang.NullPointerException
android·java·android studio
小保CPP13 分钟前
OpenCV C++车型识别1-图像预处理
c++·人工智能·opencv·计算机视觉
霸道流氓气质18 分钟前
分布式系统中接口时序不确定性处理
java·开发语言·分布式
深入云栈19 分钟前
Netty 4.2.x 源码深度解析 (四):HashedWheelTimer —— 时间轮定时调度算法
java
带刺的坐椅35 分钟前
别再把 Coding Agent 当智能补全了:SolonCode 想做的是数字员工
java·solon·codex·claudecode·opencode·soloncode
库克克35 分钟前
【C++】C++11 包装器function 与 绑定器 bind
开发语言·c++
大模型码小白41 分钟前
在 Windows 下 Codex 安装、配置与使用详细指南
java·人工智能·windows
多加点辣也没关系44 分钟前
JavaScript|第30章:事件机制
开发语言·javascript
小大宇44 分钟前
python milvus 案例
开发语言·python·milvus