作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我在文本编辑器中打开了已编译的 Hello World Obj-C 应用程序,令我惊讶的是,我发现了大约 8 KB 的 00 00 00 00 00 00 00 00 ....
为什么会在这里?有没有办法清除这些零(我怀疑它们有太多的功能)?
显然它在这个文件中不是那么重要,因为它只有 16kB 开始,但我还是想知道。
最佳答案
它很可能是代码、数据、重定位或您使用的可执行格式的其他部分之间的填充。
链接器喜欢在 4k 或 8k 边界上填充这些部分。这以一点内存浪费为代价缩短了加载时间。
对于简单的 hello world 这很重要,但对于大型应用程序,用于填充的额外内存可以忽略不计。
关于objective-c - 为什么我编译的(小的)objective-C 文件的一半是一大块零?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/146025/
我是一名优秀的程序员,十分优秀!