变量内存分析
int num = 666;//0000 0000 0000 0000 0000 0010 1001 1010
char ch = 'a';//ASCII码值为97 0110 0001
int test = 888;//0000 0000 0000 0000 0000 1000 1000 1000
-
变量在内存中的表现形式
-
图解
1.开辟内存空间从大地址向小地址开辟2.变量的首地址,是变量所占存储空间字节地址.num的所在地址
3.低位保存在低地址字节上,高位保存在高地址字节上
4.char类型存储在内存中是将其ASCII码存在里面
5.ASCII码的范围0~2^7-1 (八位数字,第一位符号位0000 0000)
0000 0000 0000 0000 0000 0010 1001 1010
(高位)--------------------------->(低位)
数组的变量内存分析
int num[2] = {1,2};
char chs[3] = {'a','b','c'};
int num2[2] = {3,4}
-
变量在内存中的表现形式
-
图解
1.给数组分配内存空间和普通变量一样从大地址向小地址开辟,开辟了num,chs[3],num2[2]三块内存区域2.给数组的每一个元素分配内存空间的时候,是从已经分配好的内存地址从小的开始分配
3.和变量往内存中存储数据一样,从自己占用内存地址比较大的开始存储,高位保存在高地址,低位保存在低地址上.
4.字符仍然以ASCII码的形式存储