今天对于大小端、高低字节基础的东西犯迷糊了,今天记下这篇博客,把这些知识捋清楚。
高低字节:比如像 int t=0x1234785678,最左边的就是最高字节0x12,最右边为最低字节0x78
大小端:仅对大于1个字节的数据类型,像char就不存在大小端问题,大端就是高字节存入低地址,小端就是低字节存入低地址。(一般像windows是小端,小端居多)
int t=0x1234785678
大端存储:
地址 数据
- 0x00000000 0x12
- 0x00000001 0x34
- 0x00000002 0x56
- 0x00000003 0x78
小端存储:
地址 数据
- 0x00000000 0x78
- 0x00000001 0x56
- 0x00000002 0x34
- 0x00000003 0x12
字节数组大小端:字节数组不存在大小端,数组在内存中是连续的,地址从小到大开始储存对应下标也是从小到大数据,其他类型数组也如此,比如 int a[4]地址存储也是从小到大,a[0]地址为最小
比如:char str[4];
地址 数据
- 0x00000000 str[0]
- 0x00000001 str[1]
- 0x00000002 str[2]
- 0x00000003 str[3]
memcpy大小端:
memcpy((& int) ,char *),如果将char*复制到int中,存在大小端,如果是小端就是char s[0]复制到int中的低地址,大端的话,char s[0]复制到int中的高地址中
这篇博客说的很详细:大端 小端 与memcpy
最后
以上就是光亮美女最近收集整理的关于170615_大端与小端、memcpy、字节数组、高低字节的全部内容,更多相关170615_大端与小端、memcpy、字节数组、高低字节内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复