大家好,这里是笨鸟先飞这次为大家解析一下数据在内存中是如何存储的。
种一棵树最好的时间十年前,其次是现在
数据类型介绍
- char / /字符数据类型
- short //短整形
- int //整形
- long //长整型
- float //单精度浮点型
- double //双精度浮点型
类型的意义:
- 使用这个类型开辟内存空间的大小(大小决定了数据范围)。
- 如何看待内存空间的视角
各种类型的数据大小?
类型的基本归类
整形家族:
char在内存实际上存的是他的ascll码的值
所以char归为了整形家族
unsigned代表无符号数,也就是无视符号位,眼中只有正数
signed代表有符号数,他的二进制中的最高位是符号位,0表示正数,1表示负数
其中char的到底是unsignde还是signed取决于编译器,其他的如int ,short在没有加类型的情况下都是signed
char;
unsigned char;
signed char;
short;
unsigned short[int];
signed short[int];
int
unsigned int
signed int
long
unsigned long [int]
signed long [int]
生活中有些数据是没有负数,如升高,体重,长度。这个时候就可以用到unsigned
像温度有正有负,我们就使用signed
浮点数家族:
float
double
只要表示小数就可以使用浮点型,其中double类型的精度比float类型精度更大
构造类型:
数组类型
结构体类型 struct
枚举类型 enum
联合类型 union
指针类型:
int * pi
char* pc
float* pf
void*pv
空类型:
void表示空类型(无类型)
通常应用于函数的返回类型,函数的参数,指针类型。
整形在内存中的存储
我们之前讲过一个变量的创建是要在内存中开辟空间的,空间的大小是根据不同的类型而决定的。
那接下来我们谈谈数据在所开辟的内存中到底是如何存储的?