struct 定义的结构里面,如何按位(BIT 对齐,注意不是按字节对齐 struct aa{singed bb:4;singed cc:4char dd;}为什么sizeof(aa =5 ???是按1 bit位对齐,bb cc应该凑成一个字节才对 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 signed 类型一般是4字节的你所写的是位字段结构前两个字段会放在一个signed 中如下:|________________|____|____| 8 - 31位 为空 cc bb 所以前两个字段4个字节,虽然只用了0 - 7位,但 8 - 31位也是存在的而dd为一个字节,所以一共是5个字节如果要为一个字节,应这样定义struct aa{ char bb:1 char cc:1 char dd:1} 不好意思,我不知道有按BIT对齐的,我只知道有按1,2,4,8字节对齐的! 不可能,虽然是bit,但是照样占1个字节 求助0xC0000005: 写入位置 0x00000000 时发生访问冲突 高分求助:DC原点 求救 vc++编译中出现的错误,请帮忙改正!! TCP/IP方式建立连接时,客户端发送数据的端口是随机的吗?是否能指定客户端的发送端口? 请问怎么样用VC编写DLL程序 各位,判断一个点是否在弧上,有没有什么好的算法? 高分求教各路高手哥们:CPropertySheet的焦点问题 高手们看看vc++我用smtp做的发送邮件程序被360阻止怎么办?怎样绕过 菜鸟问题,欢迎取分!!!! 怎样在弹出的对话框中作图,急,在线等! 谁有绘制正态分布曲线的程序?
你所写的是位字段结构
前两个字段会放在一个signed 中如下:|________________|____|____|
8 - 31位 为空 cc bb 所以前两个字段4个字节,虽然只用了0 - 7位,但 8 - 31位也是存在的
而dd为一个字节,所以一共是5个字节
如果要为一个字节,应这样定义
struct aa
{
char bb:1
char cc:1
char dd:1
}