Chinaunix首页 | 论坛 | 博客
  • 博客访问: 213846
  • 博文数量: 30
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 476
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-07 18:15
个人简介

程序员一个。14年毕业。

文章分类

全部博文(30)

文章存档

2014年(13)

2013年(17)

我的朋友

分类: C/C++

2014-06-18 00:04:50

int main()
{
    char* c;
    struct bitfield {
    int ia:3;
    int ib:2;
    int ic:3;
    } field;
    field.ia=4;
    field.ib=2;
    field.ic=2;
    c=(char *) &field;
    printf("%#x\n",*c);
    return 0;
}
大端输出0xffffff92
小端输出0x54

大端:ia->ib->ic由高地址到低地址排序,即field内存映射为 100 10 010(0x92,按符号位拓展,则变成0xffffff92)
符号位拓展,请参考http://blog.chinaunix.net/uid-24857907-id-3992512.html
小端:ia->ib->ic由低地址到高地址排序,field内存映射为 010 10 100(0x54)

阅读(1679) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~