【知识点:共用体】
● 共用体(union),允许在相同的内存空间中存储不同的数据类型。
● 共用体中的所有成员共享相同的内存地址,这意味着在同一时刻只能使用共用体的一个成员。
● 共用体主要用于节省内存空间,特别是在处理多种数据类型但不需要同时使用它们的情况下。
【算法代码】
由于共用体中的所有成员共享相同的内存地址,故在下文的代码中,若对 t.y 赋值后再次输出 t.x,则此时 t.x 的值将不再是初次赋的值 12,而是根据 t.y 的内存表示而生成的一个未定义的值。
cpp
#include <iostream>
using namespace std;
union Node {
int x;
float y;
};
int main() {
Node t;
t.x=12;
cout<<"t.x: "<<t.x<<endl;
t.y=3.1415;
cout<<"t.y: "<<t.y<<endl;
cout<<"t.x: "<<t.x<<endl;
return 0;
}
/*
t.x: 12
t.y: 3.1415
t.x: 1078529622
*/
【参考文献】
https://blog.csdn.net/weixin_49503250/article/details/129977606