b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

为什么C语言结构的内存大小为24?

电脑杂谈  发布时间:2020-06-14 11:18:39  来源:网络整理

卫星星历计算与轨道参数计算 c 语言_c s结构与b s结构 松鼠科学会_c 计算结构体大小

x86的默认值为4字节2113对齐方式,也就是说,如果您申请52611字节的内存,则操作系统将为4字节大的4102小空间分配内存,内部1653内存对齐方式可以使CPU运行得更快. 在这里,如果是char数据;更改为char data [2];字符数据[3];字符数据[4];最受欢迎的sizeof结果是相同的. 或定义更多字符c 计算结构体大小c 计算结构体大小,例如:

typedef结构树

{

c 计算结构体大小_卫星星历计算与轨道参数计算 c 语言_c s结构与b s结构 松鼠科学会

字符数据;

char data1;

char data2;

卫星星历计算与轨道参数计算 c 语言_c 计算结构体大小_c s结构与b s结构 松鼠科学会

char data3;

结构树* lchild,* rchild;

}树;

c s结构与b s结构 松鼠科学会_c 计算结构体大小_卫星星历计算与轨道参数计算 c 语言

typedef结构树

{

卫星星历计算与轨道参数计算 c 语言_c s结构与b s结构 松鼠科学会_c 计算结构体大小

char数据[4];

结构树* lchild,* rchild;

}树;

效果是一样的

x86下的可寻址性是2到32次方,即32位,并且相应指针的大小也是4个字节,因此它是4 + 4 + 4 = 12.

如果定义字符数据;它是char数据[5];这些数据也会自动对齐,原来4 + 1将变为4 + 4;

在X64的情况下,默认为对齐8个字节,寻址能力变为2的第64次幂,即指针大小为8个字节,最终结果为8 + 8 + 8 = 24;此时,数据大小定义为1到8,最终大小相同.


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-244956-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...