我想制作一个比应有的大得多的虚拟 Win32 EXE 文件。所以默认情况下,样板 Win32 EXE 文件为 80 KB。我想要一个 5 MB 的空间来测试其他一些实用程序。
第一个想法是添加资源,但事实证明,在内存分配方面,嵌入式资源与 5 MB 代码不同。我在想我可以引用一个大型库并最终得到一个巨大的 EXE 文件?如果不是,也许编写几千个类似的方法,如 AddNum1、AddNum2 等?
非常感谢任何简单的想法。
最佳答案
简单地定义一个大的静态字符数组怎么样?
char const bigarray[5*1024*1024] = { 1 };
另请参阅我在此线程中的其他答案,我建议静态链接到大型库。如果你只引用足够多的库代码,这肯定会引入真正的代码。
编辑:添加了非零初始化,因为编译器/链接器以优化方式处理仅包含零的数据。
编辑:添加了对我其他答案的引用。
编辑:添加了 const 限定符,因此 bigarray 将被许多编译器放置在代码中。
关于c++ - 如何使 C++ EXE 更大(人工),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3840374/