首页 > 其他 > 详细

关于联合的一些介绍

时间:2014-03-25 14:02:50      阅读:414      评论:0      收藏:0      [点我收藏+]
bubuko.com,布布扣
 1 #include <stdio.h>
 2 
 3 typedef union _A{
 4     int i;
 5     char c[2];
 6 }A;
 7 
 8 A g_a; //266
 9 
10 int main(){
11     static A s_a;    // 266
12     A a_a;
13 
14     s_a.c[0] = 10;
15     s_a.c[1] = 1;
16 
17     g_a.c[0] = 10;
18     g_a.c[1] = 1;
19 
20     a_a.c[0] = 10;
21     a_a.c[1] = 1;
22 
23     printf("%d\n", g_a.i);
24     printf("%d\n", s_a.i);
25     printf("%d\n", a_a.i);
26 
27     getchar();
28 
29     return 0;
30 }
bubuko.com,布布扣


上面的结果是怎么样的?

在c89标准,32位平台下,全局变量g_a和局部静态变量S_a自动初始化为0, 局部变量a_a的值是随机的。编译器为这3个变量预留了4个字节的空间。

解释如下图;

bubuko.com,布布扣

关于联合的一些介绍,布布扣,bubuko.com

关于联合的一些介绍

原文:http://www.cnblogs.com/hdu-2010/p/3622732.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!