我正在编写一个C程序,在递归时超过了递归限制,导致段错误。有没有办法增加程序的递归限制(比如通过增加堆栈大小),无论是通过GCC选项还是命令行选项?该程序在Ubuntu上运行。
我正在编写一个C程序,在递归时超过了递归限制,导致段错误。有没有办法增加程序的递归限制(比如通过增加堆栈大小),无论是通过GCC选项还是命令行选项?该程序在Ubuntu上运行。
ulimit -s unlimited
并不能真正使堆栈大小无限制。它只是允许使用系统配置的最大限制。 - wallykulimit
命令提供了一种堆栈大小控制的源。内核内提供了其他级别的控制,强制执行系统策略、内存限制和其他限制。
gdb
验证过了。 - Claudiufree
释放)。请编辑您的问题以更多地了解您的C程序,并提供您的递归函数源代码。 - Basile Starynkevitch