红联Linux门户
Linux帮助

C语言共用体一个小疑问

发布时间:2012-05-01 23:32:42来源:红联作者:mr_tianwei
定义一个共用体
U {int a;}U1 printf("%d",sizeof(U1) // 情况1
U {char b;}U1 printf("%d",sizeof(U1) // 情况2
U {int a;char b;}U1 printf("%d,"sizeof(U1) //情况3

打印结果:4 , 1 , 8
我想知道为什么情况3的结果是占8个字节
文章评论

共有 7 条评论

  1. o_oxiaocai 于 2012-05-12 17:52:45发表:

    刚要开始学内核,把以前C课本翻出来看了一遍,不知道共用体在内核里面用的多么

  2. lzhj881506 于 2012-05-09 14:25:15发表:

    学习了,谢谢。

  3. honglianqxw123 于 2012-05-09 07:00:13发表:

    学习了,谢谢。

  4. 相思爱文 于 2012-05-07 22:34:06发表:

    引用:
    2# 绿色圣光
    对了, 红联里发表了的帖子怎么删掉啊
    mr_tianwei 发表于 2012-5-2 22:21

    帖子发表后,点编辑,可以修改,在没有回复的情况下,可以删除。
    帖子被回复后,就属于社区公共资源,一般不可以删除,但版权仍归帖主所有。

    特别情况需要处理,可以使用道具或请管理员帮忙。

  5. 绿色圣光 于 2012-05-03 08:09:48发表:

    [i=s] 本帖最后由 绿色圣光 于 2012-5-3 08:11 编辑 [/i]

    引用:
    2# 绿色圣光


    不好意思是我程序里写错了,是union 不小心写了struct。。 对了, 红联里发表了的帖子怎么删掉啊
    mr_tianwei 发表于 2012-5-2 22:21

    点击“编辑”,勾选右上角的“删?”,保存。

  6. mr_tianwei 于 2012-05-02 22:21:12发表:

    2# 绿色圣光


    不好意思是我程序里写错了,是union 不小心写了struct。。 对了, 红联里发表了的帖子怎么删掉啊

  7. 绿色圣光 于 2012-05-02 19:59:33发表:

    情况3应该是4啊