学好编程! 2021-07-30 13:44 采纳率: 96.8%
浏览 40
已结题

为什么是0呢 不应该是4吗?

结果是0

#include <stdio.h> t
union myun {struct { int

x,int y,int z;}u; int k; }a;

int main( )
{
a.u.x=4;a.u.y=5;a.u.z=6;a.k=0;
printf(“%d\n”,a.u.x);
}

  • 写回答

1条回答 默认 最新

  • 快乐鹦鹉 2021-07-30 13:57
    关注

    你用的union啊,k就相当于结构中的x,你最后k=0,相当于把结构中的x设置为0,所以输出a.u.x的值是0

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 8月25日
  • 已采纳回答 8月17日
  • 创建了问题 7月30日