【1】字节序
1. 字节序的概念
字节序是指不同类型的CPU主机,内存存储 多字节整数 序列方式。
小端字节序:低序字节存储在低地址。
大端字节序:低序字节存储在高地址。
注意:
-
读取数据都是从低地址往高地址读取的,读取后,通过大小端进行转换。
-
字符串没有大小端的区别,因为字符串是单个字符组成的。
简述大小端的概念,用联合体的方式判断操作系统是大端还是小端
#include <stdio.h> union { unsigned int a; char b; }t; int main(int argc, const char *argv[]) { //联合体的方式 t.a = 0x1; printf("%#x %#x\n", t.a, t.b); if(1 == t.b) { printf("this is little-endian\n"); } else { printf("this is big-endian\n"); } //指针的方式验证 unsigned int c =1 ; char* pc = (char*)&c; if(1 == *pc) { printf("this is little-endian\n"); } else { printf("