0


170615_大端与小端、memcpy、字节数组、高低字节

今天对于大小端、高低字节基础的东西犯迷糊了,今天记下这篇博客,把这些知识捋清楚。

高低字节:比如像 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

标签:

本文转载自: https://blog.csdn.net/zuo_8267225/article/details/118380006
版权归原作者 左天任 所有, 如有侵权,请联系我们删除。

“170615_大端与小端、memcpy、字节数组、高低字节”的评论:

还没有评论