数据结构day2

结构体字节对齐

32位:8+4+4+4=32

32位:1+1+2+2+4+4++4+4=22

两种验证大小端对齐

共用体判断

cs 复制代码
#include <stdio.h>
union A
{
    char t1;
    int t2;
};
int main(int argc, const char *argv[])
{
    union A a1;   //栈区
 a1.t2 = 0x12345678;   //0x12数据高位  0x78数据低位
    printf("%#X\n",a1.t1);  //访问共用体中的地址低位
    printf("%p\n",&a1.t1);
    printf("%p\n",&a1.t1+3);
    return 0;
}

指针判断

cs 复制代码
#include <stdio.h>
int main(int argc, const char *argv[])
{
    int a = 0x12345678;
    char *p = &a; //为了只取a的低地址的数据

    if(*p==0x78)
    {
        printf("小端\n");
    }
    else
    {
        printf("大端\n");
    }

    return 0;
}
相关推荐
freshman_y9 小时前
一篇介绍C语言中二级指针和二维数组的文章
c语言·开发语言
weixin_4139206110 小时前
LVGL仪表显示项目
c语言
gumichef11 小时前
算法的时间复杂度和空间复杂度
数据结构
小柯博客12 小时前
STM32MP2安全启动技术深度解析
c语言·c++·stm32·嵌入式硬件·安全·开源·github
cpp_250112 小时前
P1832 A+B Problem(再升级)
数据结构·c++·算法·动态规划·题解·洛谷·背包dp
爱编码的小八嘎12 小时前
C语言完美演绎9-1
c语言
꧁细听勿语情꧂13 小时前
合并两个有序表、判断链表的回文结构、相交链表、环的链表一和二
c语言·开发语言·数据结构·算法
大肥羊学校懒羊羊13 小时前
完数与盈数的计算题解
数据结构·c++·算法
气宇轩昂固执狂13 小时前
01-初识C语言
c语言·开发语言
我要升天!14 小时前
C语言连接 MySQL:libmysqlclient 获取方式详解
c语言·开发语言·数据库·mysql·adb