携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第20天,点击查看活动详情
:scissors: 写在前面
经过上篇博客的学习,你已经知道了数据的运算, 那数据在内存中又是如何存储的呢? 今天bug郭就带你一起学习数据在内存中的储存!
@TOC
:100: 本章重点
- 数据类型详细介绍
- 整形在内存中的存储:原码、反码、补码
- 大小端字节序介绍及判断
- 浮点型在内存中的存储解析
:book: 数据类型介绍
那些我们学过的C语言数据类型,你还记得多少,我们一起来整理一一下吧:book:
:eye:内置类型
char //字符型 1byte
int //整型 4byte
short//短整型2byte
long //长整型4/8byte
long long //更长的整型8byte
float //单精度浮点型 4byte
double//双精度浮点型8byte
//C语言中无字符串类型
类型的意义 之前的博客中已经介绍过了
- 类型可以决定该类型的变量在内存中创建内存空间的大小
- 类型可以决定指针访问的权限,加减指针的位移
- ..........
我们可以根据我们变量的大小合理选择类型,创建空间大小。
不同的数据类型根据它们的字节大小,需要占用不同空间大小的内存空间
类型的基本归类
整型家族
char
signed char
unsigned char
short
signed short [int]
unsigned short [int]
int
signed int
unsigned int
long
signed long [int]
unsigned long [int]
long long
signed long long [int]
unsigned long long [int]
注意:字符型也归类为整型家族,每个类型都有有符号类型和无符号类型。
浮点数家族
float
double
构造类型
//结构体类型
struct
//枚举类型
enum
//联合类型
union
指针类型
char*
int*
float*
void*
空类型
void
void空类型
通常使用在函数的参数,返回值,指针。