指针是什么
1. 完整例子
| 1 | #include <stdio.h> |
| 2 | |
| 3 | int main(void) { |
| 4 | int x = 42; |
| 5 | int *p = &x; // p 存 x 的地址 |
| 6 | printf("x=%d\n", x); |
| 7 | printf("*p=%d\n", *p); |
| 8 | *p = 100; |
| 9 | printf("x=%d\n", x); // 100 |
| 10 | return 0; |
| 11 | } |
2. 拆解
- &x:取 x 的地址
- int *p:声明 p 是指向 int 的指针
- *p:解引用,按 int 访问那块内存
3. 概念强调
指针本身也有类型和大小(32 位平台常见 4 字节)。类型决定步长与如何解释内存。