LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 893|回复: 3

gcc 编译选项问题。

[复制链接]
发表于 2003-10-17 15:59:38 | 显示全部楼层 |阅读模式
大家都知道编译器在编译时会把结构优化
如写一个
struct test{
……
……
}
也许总长度算起来是128bytes
可是sizeof(struct test)也许会出现132bytes

这是由于编译器对结构(也许是8bytes对齐)的对齐导致的吧(不知道说没说错)
在vc中可以自己定义对齐的字节数。不知道在gcc中怎么设置对齐的字节数。
谢谢!!
 楼主| 发表于 2003-10-17 16:18:03 | 显示全部楼层
struct test{
……
……
}__attribute__ ((packed));
好像这个可以,不知道对不对
发表于 2003-10-17 23:09:01 | 显示全部楼层
是的

我写过一篇FAQ并发在这里

你找来看看吧

参数选项
fpack-struct

头文件中
#prama pack(1)
忘记快完了 还是看那篇文章清楚
就在这论坛里面
 楼主| 发表于 2003-10-20 08:46:41 | 显示全部楼层
已经找到,谢谢!!!
我是从gcc文档中找了半天才找到的,我得poorE文
若是早看到斑竹的帖子……
5~~~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表