目录
1.数据类型
整型分类
2.整型在内存中的存储
2.1原码,反码,补码
2.2大小端介绍
3.浮点数在内存中的存储
使用不同类型开辟内存空间的大小不同(大小决定了使用范围)
char //字符数据类型
short //短整型
int //整形
long //长整型
long long //更长的整形
float //单精度浮点数
double //双精度浮点数
本篇主要讲整型,以下是整型的分类
char
unsigned char
signed char
short
unsigned short [int]
signed short [int]
int
unsigned int
signed int
long
unsigned long
signed long
signed:有符号的
unsigned: 无符号的
:字符在内存中存储的是字符的ASCII码,ASCII码值是整型,所以字符类型归类到整型
整数的二进制表示形式有3种:
①原码:按照数值的正负,直接写出的二进制序列就是原码。
②反码:原码的符号位不变,其他位按位取反。
③补码:反码的二进制+1就得到补码
①<=>③,都可以通过取反加一得到;
三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位
正数的原、反、补码都相同。
负整数的三种表示方法需要计算
大端字节序存储:
把一个数据的低位字节处的数据存放在内存的高地址处高位字节处的数据存放在内存的低地址处
小端字节序存储:
把一个数据的低位字节处的数据存放在内存的低地址处高位字节处的数据,存放在内存的高地址处
//如何判断机器大小端
int main()
{
int a = 1;
char* p = (char*)&a; //因为char是一个字节,而int是四个字节
//如果是小端 01 00 00 00
//大端: 00 00 00 01
if (*p == 1)
{
printf("小端\n");
}
else
printf("大端\n");
return 0;
}