c语言共用体内存共用问题,为什么和理解的不一样,求解答,谢谢
#include<stdio.h>
union info
{
char stu1;
char stu2;
char stu3;
}*info1,info2,info3,*info4;
void main()
{
info1=&info3;
info4=&info2;
//info1->stu1='t';
info2.stu2='a';
info1->stu2='b';
info2.stu2='c';
info4->stu2='d';
printf("%c\n",info3.stu2);
printf("%c\n",info1->stu2);
printf("%c\n",info2.stu3);
printf("%c\n",info4->stu2);
}
论坛的大神们帮帮忙解析下这个程序,为什么输出回事
b
d
不应该都是d吗
是哪个环节出了问题