c语言中int占四个字节对吗,c语言中int都是4个字节吗

首页 > 教育培训 > 作者:YD1662023-06-18 16:41:15

c语言中int占四个字节对吗,c语言中int都是4个字节吗(1)

c语言中int占四个字节对吗,c语言中int都是4个字节吗(2)

作者 | 豌豆花下猫

来源 | Python猫(ID:python_cat)

我之前的一篇文章,带大家揭晓了 Python 在给内置对象分配内存时的 5 个奇怪而有趣的小秘密。文中使用了sys.getsizeof来计算内存,但是用这个方法计算时,可能会出现意料不到的问题。

文档中关于这个方法的介绍有两层意思:

也就是说,getsizeof 并不是计算实际对象的字节大小,而是计算“占位对象”的大小。如果你想计算所有属性以及属性的属性的大小,getsizeof 只会停留在第一层,这对于存在引用的对象,计算时就不准确。

例如列表 [1,2],getsizeof 不会把列表内两个元素的实际大小算上,而只是计算了对它们的引用。举一个形象的例子,我们把列表想象成一个箱子,把它存储的对象想象成一个个球,现在箱子里有两张纸条,写上了球 1 和球 2 的地址(球不在箱子里),getsizeof 只是把整个箱子称重(含纸条),而没有根据纸条上地址,找到两个球一起称重。

c语言中int占四个字节对吗,c语言中int都是4个字节吗(3)

计算的是什么?

我们先来看看列表对象的情况:

c语言中int占四个字节对吗,c语言中int都是4个字节吗(4)

首页 123下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.