zoukankan      html  css  js  c++  java
  • 自己实现sizeof+大小端测试

    #define my_sizeof(type) ((char *)(&type+1)-(char*)(&type))

    同时大小端测试 如下

    #include <stdio.h>
    #include <stdlib.h>
    
    #define my_sizeof(type) ((char *)(&type+1)-(char*)(&type))
    
    int main(void)
    {
        unsigned int u32RawData;
        unsigned char *pu8CheckData;
        u32RawData = 0x11223344; //Assign data
    
        
        printf("%ld
    ", my_sizeof(u32RawData)); 
        printf("%p
    ", (&u32RawData+1 - &u32RawData)); 
        printf("%p
    ", (char*)(&u32RawData+1)-(char*)(&u32RawData)); 
        printf("%p
    ", (char*)(&u32RawData)); 
    
        pu8CheckData = (unsigned char *)&u32RawData; //Type cast
    
        if (*pu8CheckData == 0x44) //check the value of lower address
        {
            printf("little-endian");
        }
        else if (*pu8CheckData == 0x11) //check the value of lower address
        {
            printf("big-endian");
        }
    
        return 0;
    }
    

    在x86平台测试是小端模式

  • 相关阅读:
    everything is nothing
    基础算法
    OC 优化目录
    iOS 更改启动视图
    单例--iOS
    OC-Objection 学习笔记之一:简单的开始
    iOS 类库列表
    IOS 上线问题
    OC强弱引用的使用规则
    设置桌面图标
  • 原文地址:https://www.cnblogs.com/CodeWorkerLiMing/p/12007370.html
Copyright © 2011-2022 走看看