数据存储篇1.

博客介绍了字节序,包括概念、分类,指出其主要用于网络通信,不同主机字节序不同会造成数据二义;阐述了整形在内存中以补码存储;说明了指针本质是地址及相关特性;还介绍了常见数据类型及其作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.字节序

1.概念:CPU对内存中的数据以字节为单位进行存储的顺序。(因为内存有高低地址之分,数据的二进制有高低位之分)(起始地址是低地址)

2.分类:eg: int a=0x01020304

大端:高字节存放在低地址(低地址存高位) 01 02 03 04

小端:高字节存放在高地址(低地址存低位) 04 03 02 01

 

3.针对的数据类型:存储单元大于一个字节的数据类型

对于字符数组不受影响,eg: char arr[10];

PS:主句字节序主要取决于CPU架构:X86 小端,MIPS 大端

字节序主要是在网络通信中不同主机之间的通信,若字节序不同会造成数据二义

二.整形的存储:整数在内存中的存储采用的是补码,可以节省一些运算单元

在内存中数据都是以二进制形式进行存储的 

原码:数据直接转换成二进制

补码:符号位不变,其他位按位取反

反码:补码加1

PS:正数的原反补码都相同

eg: -10   (用char型表示)

原1000 1010

补1111 0101

反1111 0110

三.指针:本质是地址因为它指向了一块内存空间。

指针是一种类型,通常定义指针变量实际上是定义指针类型的变量,即有一块自己的空间,保存了另一块空间的地址。

PS:指针+1,是向后偏移一个它所指向的元素;

指针-指针得到的是两个指针之间间隔的元素个数;

指针解引用所得到的是它所致类型的字节个数,如整形指针解引用操作可以访问4个字节;

指针可以比较大小;

二级指针是指向一级指针的指针,是用来保存一级指针的地址;

指针的大小在32位下是4个字节,64位下是8个字节

四.数据类型

有char, short, int, long, float, double 以及相应的无符号类型

指针类型:char*、....

数据类型的作用:确定能访问的空间大小;看待空间中数据的角度(对于指定空间中数据的解释)

(char, short, int, long存储的都是整数)

(char虽然是字符类型但存储的是ascii值)

void是空类型,修饰函数返回值类型以及修饰函数参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值