#include "stdio.h"union bt{ int a; int b[2]; };void fun(union bt *c){ c->a=-7; c->b[0]=7; c->b[1]=8; }; main(){ union bt c; fun(&c); printf("%d\n",c.a); }
#include "stdio.h"union myun{ struct { int x,y,z;}u; int k;}a; main(){ a.u.x=4;a.u.y=5;a.u.z=6; a.k=9; printf("%d%d%d\n",a.u.x,a.u.y,a.u.z); }
引用第2楼独飞の孤心于2006-09-08 10:07发表的:union是公用的哈,它的空间是所有成员中最大那个不象struct,结构体的空间是每个成员的一个和。。。见示意图(b[0]=7,b[1]=8;所以a=b[0]=7)
引用第5楼朱颜华发于2006-09-08 13:11发表的:晕死,楼上的你的也不是什么好法子