C语言取地址符 `&` 极简教程

一句话:`&` 就是 **"问地址"** ------ 就像问快递柜"我的包裹在哪个格子里?"

复制代码
int a = 10;

printf("a 的值: %d\n", a);       // 输出: 10
printf("a 的地址: %p\n", &a);   // 输出: 0x7ffd... (十六进制地址)

|-----|----------------------|
| 表达式 | 含义 |
| a | 变量的(10) |
| &a | 变量的地址(0x7ffd...) |

最常见的 2 个用法

1.scanf 传地址

复制代码
scanf("%d", &a);  // 告诉 scanf:把输入的值塞到 a 的地址里

为什么 scanf 要 &a?因为 scanf 需要知道 "往哪儿写"

2.指针赋值

复制代码
int *p = &a;  // p 存了 a 的地址,p 就是指向 a 的指针

注意

& 只能对变量用,不能对常量/表达式:&10 ❌

& 和 * 是互逆的:*&a == a ✅

总结

& = 取地址 = "变量住哪儿?"

配合 scanf、指针使用,是 C 语言入门必会的基础操作符。


如果你觉得有帮助,欢迎点赞、收藏、评论,让更多人看到!

相关推荐
派葛穆9 小时前
Lerobot -飞特舵机ST-3215双舵机联动(ESP_NOW)
c语言
零依赖极客10 小时前
Day 6·1 ARMv8.2 dotprod——vdotq_s32 一条指令做 4 个点积
c语言·开发语言·人工智能·矩阵·arm·vllm
老王爱玩车13 小时前
深入理解指针2
c语言·开发语言·学习
l1t15 小时前
用superpi、tinypi、tpi等工具计算圆周率的比较
c语言·算法
零依赖极客18 小时前
Day 8·1 自注意力机制:Q·K^T/softmax/V的在线计算
c语言·arm开发·人工智能·llama
水饺编程19 小时前
第5章,[Win32 章节] :在平面直角坐标系中描点
c语言·c++·windows·visual studio
linx29519 小时前
单元九 · 零基础路线图-第 7–9 周·类与 RAII
c语言·开发语言·数据结构·c++·嵌入式硬件·算法
无忧.芙桃19 小时前
嵌入式(一):嵌入式历史与计算机基础:从 ENIAC 到 MCU 四大技术方向
c语言·单片机·嵌入式硬件·计算机
一只旭宝19 小时前
Python 与 C/C++ 内存模型对比总结
c语言·c++·python
白色的北极熊20 小时前
c语言 输出菱形字符串
c语言·开发语言