当选择增长文本段或数据段时,哪一组标准可以决定选择?
我不知道不同配置(动态/静态链接、PIC、非PIC等)在编译或执行时的差异和影响。所以我要问的是所涉及的权衡是什么。
更具体的是:它在编译时通过使用静态char数组来增长,基本上是const或not,而稳定性显然决定了它是否以文本结尾。为什么会这样呢?
发布于 2015-01-14 17:04:34
代码段是只读的,需要加载(它可以直接从磁盘分页)并可以共享.
相反,数据段是可写的(由分页文件或RAM支持),因此不共享。
因此,如果您可以在增加数据段之间做出选择,那么就应该选择一个更小的数据段,因为数据段中相同的空间通常会消耗更多的资源,即使您的程序不会同时运行多次。
标记所有你能做的const还有一个额外的好处
不尊重数据不应该更改的事实更有可能被编译器捕捉到,如果不是稍后被运行时捕获(内存保护),而不是悄悄地破坏您的状态。
https://stackoverflow.com/questions/27948375
复制相似问题