C 语言问题

  1. C语言中 union struct 的区别

|--------|--------------------------------------------|--------------------------------------------|
| 类型 | struct | union |
| 内存分配机制 | 编译器为每个成员‌独立分配内存空间,总内存大小 = 所有成员大小之和(考虑内存对齐) | 所有成员‌共享同一段内存空间,总内存大小 = ‌最大成员的大小‌ |
| 数据存储特性 | 1. 所有成员可同时存储数据 2. 成员独立无覆盖风险 3. 可初始化任意成员 | 1. 同一时间仅能存储一个成员 2. 新赋值覆盖旧数据 3. 默认仅能初始化首个成员 |
| 应用场景 | 需同时保存多个关联数据(如学生信息:姓名+年龄+成绩) | 处理互斥数据 |

相关推荐
阿波罗尼亚20 分钟前
ExcelUtils实现 设置内容 插入行 复制行列格式
java·开发语言
啊吧怪不啊吧1 小时前
C++之list类的代码及其逻辑详解 (中)
开发语言·数据结构·c++·list
.YM.Z2 小时前
数据在内存中的存储
c语言·内存
THMAIL2 小时前
大模型0基础开发入门与实践:第11章 进阶:LangChain与外部工具调用
开发语言·langchain·php
hfd19902 小时前
JavaScript 性能优化实战技术文章大纲
开发语言·javascript·性能优化
楼田莉子3 小时前
C++算法学习专题:滑动窗口
开发语言·数据结构·c++·学习·算法·leetcode
炸膛坦客3 小时前
C++ 学习与 CLion 使用:(四)常量和变量,包括字面常量和符号常量
开发语言·c++·学习
特立独行的猫a3 小时前
C/C++三方库移植到HarmonyOS平台详细教程(补充版so库和头文件形式)
c语言·c++·harmonyos·napi·三方库·aki
java1234_小锋3 小时前
说说你对Integer缓存的理解?
java·开发语言
至此流年莫相忘4 小时前
TypeReference 泛型的使用场景及具体使用流程
java·开发语言·spring boot