免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2494 | 回复: 4
打印 上一主题 下一主题

位域问题,请教 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-10-29 15:36 |只看该作者 |倒序浏览
  1. typedef struct {
  2.     unsigned    len:28;

  3.     unsigned    valid:1;
  4.     unsigned    no_cacheable:1;
  5.     unsigned    not_found:1;
  6.     unsigned    escape:1;

  7.     u_char     *data;
  8. } ngx_variable_value_t;
复制代码
这个结构体的大小是多少?32位系统和64位系统是否一致

论坛徽章:
0
2 [报告]
发表于 2010-10-29 15:40 |只看该作者
本帖最后由 lkk2003rty 于 2010-10-29 15:41 编辑

32位8
64位应该是16吧

论坛徽章:
0
3 [报告]
发表于 2010-10-29 15:42 |只看该作者
请教下为什么

论坛徽章:
0
4 [报告]
发表于 2010-10-29 17:01 |只看该作者
回复 3# jiean


    内存对齐。。。。

论坛徽章:
0
5 [报告]
发表于 2010-10-29 17:21 |只看该作者
我的理解是32位系统 4字节对齐,# typedef struct {
#     unsigned    len:28;
#

#     unsigned    valid:1;
#     unsigned    no_cacheable:1;
#     unsigned    not_found:1;
#     unsigned    escape:1;
#以上占用4字节

#     u_char     *data;(占用1个字节,4字节对齐占用4个字节)

64位下应该是8字节对齐,所以就是16个字节了

对吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP