我有代码
#include <stdlib.h>
void *gg = malloc(55);
int main(int argc, char **argv)
{
return 0;
}
Run Code Online (Sandbox Code Playgroud)
gcc无法编译,但g ++可以工作。
因此,我只想确保在执行main之前发生malloc调用。
C ++允许您执行操作。C ++标准有一整节关于“非局部变量的动态初始化”。
在这里,初始化程序通过两个生成的函数_GLOBAL__sub_I_gg(在之前main调用)调用,然后依次调用__static_initialization_and_destruction_0。
它在后一个函数的主体内,您可以找到对的调用malloc。
| 归档时间: |
|
| 查看次数: |
176 次 |
| 最近记录: |