#include <iostream>
using namespace std;
union {
int i;
int c;
char x[2];
}a;
int main()
{
cout << "Hello world!" << endl;
a.x[0] = 10;
a.x[1] = 1;
cout <<a.c <<endl;
return 0;
}
联合体中个成员使用同一个地址,如x[2],赋值时x[0]使用地地址,x[1]使用高地址,所以存储的是010A。输出为266。以为使用的是同一个地址所以cout <<a.c <<endl;和cout <<a.i <<endl;输出的是同一个地址的数据。
认识联合体C++
最新推荐文章于 2024-08-21 09:22:14 发布