结构体类型名可以和共同体类型名相同吗,还有就是不能对共同体变量整体赋值?结构体就可以整体赋值啊,共同体不能是什么情况
C++的话,可以放在不同的namespace,C的话,必须用两个名字。
可以对联合体赋值啊。比如
union number
{
struct
{
short hi;
short low;
} num;
int value;
};
number num;
num.value = 123;
结构体和共同体是不同的,其中结构体可以是一组不同类型的数组的组合,同样共同体内也可以包含不同类型的数据,
但是共同体的对象只能每次选用共同体内的一种数据类型,共同体是为了一个事件可以具有很多特性,但在一个时间
内只能显示一种特性!解释的比较模糊,你可以去看看c++ primer plus 这本书讲的很清楚
试一下就知道了。
不要迷信书、考题、老师、回帖;
要迷信CPU、编译器、调试器、运行结果。
并请结合“盲人摸太阳”和“驾船出海时一定只带一个指南针。”加以理解。
任何理论、权威、传说、真理、标准、解释、想象、知识……都比不上摆在眼前的事实!
如果你指的是他里面的数据的类型的话,那答案是肯定的。例如:
struct a {
int mark;
double inf;
.
.
.
};
union b{
int mark;
double inf;
.
.
};
对于他里面的数据的类型是互不相干的,只是union的对象只能是int或double的一种数据类型,而结构的对象是含有int和double数据类型的