我有以下代码:
main ()
{
printf("Hello world !");
*(int *)(0) = 0;
}
Run Code Online (Sandbox Code Playgroud)
当我编译此代码并运行时,它没有将字符串打印到控制台.在那之后,我修改了一点:
main ()
{
printf("Hello world !\n");
*(int *)(0) = 0;
}
Run Code Online (Sandbox Code Playgroud)
而且,它工作!
我认为背后的奥秘是*(int *)(0) = 0;但不知道为什么!
PS.我正在使用gcc 4.8.2进行编译.
c ×1