在一些场景中,需要把两个int 拼接成一个数值来完成一定的功能,实现方法如下
方法一:使用union和struct实现
union test0
{
long long l;
struct
{
int a;
int b;
};
};
int main
{
test0 t0;
t0.a = 1;
t0.b = 2;
printf(“%llxn”, t0.l);
}
方法二:只用struct实现
struct test
{
int a;
int b;
};
test t;
t.a = 1;
t.b = 2;
long long d;
d = *(unsigned long long *)&t;