大端小端
大端小端针对的多字节数据的存储类型的。不包括字符串,字符串是怎么写的就在内存中怎么存的。单个字节的内部位序也没有大端小端说法,怎么写的在内存中就是怎么存的。
多字节存储问题
现在有一个变量int a = 0x45862378;
共有四个字节的数据 0x45 0x86 0x62 0x78 其中0x45叫做高字节0x78叫低字节,分不清高字节还是低字节? 就像十进制一样,越往左边权重越高嘛。是按照0x78存放在内存低地址。。。0x45存放在内存高地址,还是0x78存放在内存高地址。。。
0x45存放在低地址呢? 这两种方法都可以,把低字节存放在低地址的这叫小端,以低字节开始所以叫小端,把高字节放在低地址的叫大端,以高字节开始所以叫大端。
0x45862378这个数按照小端存储就是
0x78 0x23 0x86 0x45
内存低地址-----------------------内存高地址
0x45862378这个数按照大端存储就是
0x45 0x86 0x23 0x78
内存低地址-----------------------内存高地址
大小端各有各的好处吧,大端存储你能方便的得到数据的高字节,比如一个整数的符号位。小端能方便的得到数据的低字节数据,有啥用 我暂时还没想到。
vs2017 用的是小端存储。