黑马程序员技术交流社区
标题:
C语言学习笔记之变量地址获取及存储原理
[打印本页]
作者:
chunhuayun
时间:
2015-9-24 08:22
标题:
C语言学习笔记之变量地址获取及存储原理
变量地址获取及存储原理
1.获取变量地址的方法
%p 输出一个地址
先分配字节地址大内存,然后分配字节地址小的内存
例如:
int a = 0,b = 1;
printf("&a = %p\n",&a);
printf("&b = %p",&b);
复制代码
打印结果:&a = 0x7fff5fbff94c
&b = 0x7fff5fbff948
结论:
1) a的地址比b的地址大,因为先定义的变量,计算机在分配内存的时候,从高地址向低地址分配,所以先定义的变量分配的高地址
2) a和b的地址不一定是连续的
2. 变量的存储细节
低位字节 存放在低地址
高位字节 存放在高地址
3. 变量的地址:
变量的首地址,是变量在内从中占据的最低的地址
4.变量在内存存储的细节
举例说明:
int num = 10;
char * p = #
printf("address:%p :%d\n",p ,*(p));
printf("address:%p :%d\n",p+1 ,*(p+1));
复制代码
打印结果
address:0x7fff5fbff93c :10
address:0x7fff5fbff93d :0
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2