国际空间研究组织 | ISRO CS 2020 |问题 12
在声明一个结构数组之后,假设 byte、short、int 和 long 的大小分别为 1、2、3 和 4。对齐规则规定 n 字节字段必须位于可被 n 整除的地址。结构中的字段不会重新排列,填充用于确保对齐。数组的所有元素应具有相同的大小。
Struct complx
Short s
Byte b
Long l
Int i
End complx
Complx C[10]
假设 C 位于可被 8 整除的地址,C 的总大小是多少,以字节为单位?
(一) 150
(乙) 160
(三) 200
(四) 240答案:(乙)
解释:复杂数据类型的大小将是,
= 2 + 1 + 4 + 3
= 10 Bytes
但是,地址可以被 8 整除,所以它应该是最小值,
= 10+6
= 16 Bytes
因此,这 10 种数据类型的总大小,
= 16*10
= 160 Bytes
所以,选项(B)是正确的。
这个问题的测验