设为首页 加入收藏

TOP

C语言中共用体的内存
2014-11-23 21:38:02 】 浏览:4669
Tags:言中 共用 内存
C语言中共用体的内存
C语言中结构体的和公用体的是有区别的
(1)首先是定义时候的不同
共用体的定义 union{ 成员列表 }
结构体的定义 struct{ 成员列表 }
(2)内存的区别
struct(结构体)是所有内存的总和
union(共用体)是成员中最大的那个
#include
union data /*共用体* /
{
int a;
float b;
double c;
char d;
} m m
struct stud /*结构体* /
{
int a;
float b;
double c;
char d;
}
int m a i n ( )
{
struct stud student
printf("%d,%d",sizeof(struct stud),sizeof(union data));
return 0;
}
运行结果
15 8
解析:在union中int(4个字节),float(2个字节),double(8个字节),char(1个字节),最大的是8,所以公用体的内存就为8。
在struct中则是全部之和4+2+8+1=15
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇 C 函数 toascii 下一篇c语言 文件管理FILE

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目