![]() |
1
9
如果不知道编译器及其编译的目标平台,就无法预测它。 |
![]() |
2
3
|
![]() |
3
3
一般来说是不可预测的,但实际上,它的sizeof(int)出现的频率要比不出现的频率高。它本身经常是4个;不太常见的是2个,有时肯定是8个。 大多数时候位字段将被打包,大部分时候int类型将有9个或更多的存储位。 |
![]() |
4
1
您将发现结构的大小根据编译器优化设置而变化。我可以为这个结构预测2到12个字节之间的任何地方。 即使像您这样使用位字段,也不能总是预测结构的大小。编译器可能会让每个位字段占用整型的空间,或者只占用您指定的1或4位。使用位字段,虽然它在内存存储空间上很好,但对于运行时间和可执行文件大小通常是不利的。 |
![]() |
5
0
通常每个编译器都决定如何打包联合,这样就不能对最终大小做很多假设。他们可以根据其参数决定不同的布局。 |
![]() |
6
0
添加位字段大小,除以8*sizeof(int),取该值的上限。在您的示例中,它将是4。 |
![]() |
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
![]() |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
![]() |
rainer · 后台插入程序的初始化 1 年前 |
![]() |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
|
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
|
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |