数据结构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;
}
相关推荐
玖玥拾18 小时前
C/C++ 基础笔记(十三)继承
c语言·c++·继承
退休倒计时19 小时前
【每日一题】LeetCode 53. 最大子数组和 TypeScript
数据结构·算法·leetcode·typescript
2601_9618752420 小时前
法考资料2026|全套|资料已整理
数据结构·算法·链表·贪心算法·eclipse·线性回归·动态规划
2601_9505264321 小时前
程序设计语言(C)
c语言·数据类型·实验教学·编译预处理·程序设计语言(c)
不会C语言的男孩21 小时前
Linux 系统编程 · 第 4 章:文件属性与元数据
linux·c语言·开发语言
C语言小火车21 小时前
什么时候用智能指针?什么时候用裸指针?
c语言·c++·学习·指针
玖玥拾1 天前
C/C++ 基础笔记(十二)友元、运算符重载
c语言·c++·运算符重载·友元
dtq04241 天前
C语言刷题数组5,6(求平均值,求最大值)
c语言·数据结构·算法
洛水水1 天前
【力扣100题】81.寻找两个正序数组的中位数
数据结构·算法·leetcode
石一峰6991 天前
C 语言函数设计模式实战经验
c语言·开发语言·设计模式