本文主要是介绍编译器手工开栈,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
做题的时候经常遇到深度递归的,当然,可以改成非递归形式。如果写成递归形式会爆栈,所以可以用手工扩展栈。
微软的编译器(C++)
- #pragma comment(linker, "/STACK:102400000,102400000")
G++
- int size = 256 << 20; // 256MB
- char *p = (char*)malloc(size) + size;
- __asm__("movl %0, %%esp\n" :: "r"(p));
这篇关于编译器手工开栈的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!