内存分布
内存地址 |
1x01 |
1x02 |
1x03 |
1x04 |
1x05 |
变量 |
5 |
|
&a(1x01) |
|
|
定义一个变量:
int a; 在内存上开辟了一块地方,“a”是他的名字,他在内存上的编号是1x01;
给 a 赋值:
a = 5; 在内存编号为1x01 的地方存储了 “5“,如上图;
定义一个指针:
int *p; 在内存上开辟了一块地方,“p” 为他的名字,他在内存上的编号是1x03;
给p赋值:
p = &a;p的内存存储的是a的内存地址;
下图详细的介绍了指针的原理:
几个变量的值:
a :5
&a :1x01
p :1x01
&p :1x03
*p :5
例题:
char a,*pa
a=10
pa=&a
*pa=20
printf( “%d”, a) 结果是: 20,其实 *p 就是a,他两是一块内存;
时间: 2024-10-25 11:16:57