看看这段程序~~~~~

coollc12 2010-12-22 04:41:13
#include<iostream>
using namespace std;
union un
{
int x,f,e;
struct
{
int a, b, c;
} y; //y在这表示什么
} z; //z在这表示什么
int main()
{
z.x = 5;
z.f = 7;
z.e = 9;
z.y.a = 1;
z.y.b = 2;
z.y.c = 3;
cout << z.x << endl;
cout << z.f << endl;
cout << z.e << endl;
system("pause");
return 0;
}

...全文
78 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainmarker 2010-12-22
  • 打赏
  • 举报
回复
union是一个共用体类型,也就是union中定义的成员变量不同,但他们占有的内存空间是从同一个起始地址开始的,int x;
int f;
int e;
struct
{
int a, b, c;
} y; 四个变量的其实地址是相同的,当你对变量赋值是,根据变量赋值后,新值会覆盖原来的值,
rainmarker 2010-12-22
  • 打赏
  • 举报
回复
union是一个共用体类型,也就是union中定义的成员变量不同,但他们占有的内存空间是从同一个起始地址开始的,int x;
int f;
int e;
struct
{
int a, b, c;
} y; 四个变量的其实地址是相同的,当你对变量赋值是,根据变量赋值后,新值会覆盖原来的值,
pengzhixi 2010-12-22
  • 打赏
  • 举报
回复
union un
{
int x,f,e;
struct
{
int a, b, c;
} y; //y在这表示什么 匿名结构体对象
} z; // 声明联合体一个对象
dxms8 2010-12-22
  • 打赏
  • 举报
回复
是名字吧。。。
bdmh 2010-12-22
  • 打赏
  • 举报
回复
struct后面无内容的,为无名结构体
rainmarker 2010-12-22
  • 打赏
  • 举报
回复
多看下基础吧。
healer_kx 2010-12-22
  • 打赏
  • 举报
回复
y相当于那个无名struct的实例。

z也是同理。

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧