stack-overflow相关内容

当 Fortran 生成大型内部临时数组时,如何避免堆栈溢出?

我有一些 Fortran 代码调用 RESHAPE 对矩阵进行重新排序,这样我现在要循环遍历的维度成为第一个可变维度(Fortran 中的列优先顺序). 这与 C/Fortran 互操作性无关. 现在矩阵相当大,当我调用 RESHAPE 函数时,我得到一个段错误,我非常确信这是堆栈溢出.我知道这一点,因为我可以在 ifort 中使用 -heap-arrays 编译我的代码,问题就消失了 ..
发布时间:2022-01-14 09:56:52 其他开发

PHP 不处理堆栈溢出?

当我刚尝试以下 PHP 代码时,我感到很惊讶: 函数 foo(){富();}富(); 我预计会收到“500:内部服务器错误".相反,连接立即关闭(未收到任何字节),并且日志文件显示 apache 段错误.怎么回事?这是 PHP 中的一个已知错误吗?我缺少一些配置选项吗?因为每次意外堆栈溢出都会导致进程崩溃,嗯……我认为这是非常不可接受的. 解决方案 PHP 无法解决这个问题,它只会进入 ..
发布时间:2022-01-12 16:25:03 PHP

libsigsegv 和响应堆栈溢出

我们正在尝试测试学生代码,并且为了自动化该过程,我们想检测学生的代码是否溢出堆栈. 我使用 libsigsegv 库及其相应的 stackoverflow_install_handler 取得了一些成功.它运行得非常好,直到学生的代码两次爆栈. 例如,下面是一些示例输出: [# ~]$ ledit ./interpreter->(使用解决方案)->(乐趣 1 2)***检测到堆栈溢出 ..
发布时间:2022-01-12 16:20:08 其他开发

递归 main() - 为什么会出现段错误?

为什么下面的程序会出现段错误? int main() { main();} 即使它是一个没有结束的递归,因此根据定义是无效的,但我不明白它为什么会出现段错误(gcc 4.4.3 和 clang 1.5(主干)). 解决方案 因为每次调用自己都会分配一点栈空间;最终它耗尽了堆栈空间和段错误.不过,我有点惊讶它会出现段错误.我会期待(鼓)堆栈溢出! ..
发布时间:2022-01-12 15:55:36 其他开发

malloc 分段错误

这是发生分段错误的一段代码(未调用 perror): job = malloc(sizeof(task_t));如果(工作 == NULL)perror("malloc"); 更准确地说,gdb 表示 segfault 发生在 __int_malloc 调用中,这是由 malloc 进行的子例程调用. 由于 malloc 函数是与其他线程并行调用的,最初我认为这可能是问题所在.我使用的是 ..

如何在 C++ 中处理或避免堆栈溢出

在 C++ 中,堆栈溢出通常会导致程序不可恢复的崩溃.对于需要真正健壮的程序,这是一种不可接受的行为,特别是因为堆栈大小是有限的.关于如何处理问题的几个问题. 有没有办法通过通用技术来防止堆栈溢出.(一种可扩展、强大的解决方案,包括处理消耗大量堆栈的外部库等) 如果发生堆栈溢出,有没有办法处理它们?最好,堆栈会展开,直到有处理程序来处理这种问题. 有些语言的线程具有可扩展的堆栈. ..
发布时间:2022-01-12 11:05:35 C/C++开发

为什么stackoverflow错误很混乱?

这个简单的 C 程序很少以相同的调用深度终止: #include #include 无效递归(无符号整数记录);诠释主要(无效){递归(1);返回0;}无效递归(无符号整数记录){printf("%u\n", REC);递归(rec + 1);} 这种混乱行为背后的原因可能是什么? 我正在使用 fedora(16GiB ram,堆栈大小为 8192) ..
发布时间:2022-01-11 23:30:32 其他开发

重载 getter 和 setter 导致 C# 中的堆栈溢出

当我尝试覆盖 get 和 set 函数时,我不确定是什么导致了 StackOverflowException.当我只使用默认的 get 和 set 时,它就可以工作了. enum MyEnumType{....}公共 MyEnumType 数据 { 获取;放;} 但是当我尝试添加其他数据时,它会抛出 StackOverflowException: 公共 MyEnumType 数据{得到{返回 ..
发布时间:2022-01-02 18:09:04 C#/.NET

unique_ptr 链表的堆栈溢出

我已经转换了以下链表结构 结构节点{下一个节点*;内部 v;}; 进入 c++11 版本 - 不使用指针. 结构节点{unique_ptr下一个;内部 v;}; 添加、删除元素和遍历工作正常,但是当我插入大约 100 万个元素时,在调用头节点的析构函数时会出现堆栈溢出. 我不确定我做错了什么. {节点 n;... 添加 10mill 元素} ..
发布时间:2022-01-01 18:09:22 C/C++开发

Android - 计算器溢出错误

StackOverflowError 有问题.更糟糕的是,现在它只发生在一台设备上.到目前为止,我已经测试过: 三星 Galaxy SII (2.3.4) 三星 Nexus S (4.0.3) HTC Wildfire(2.3.7 和 2.2) 三星 Galaxy Tab 10.1 (3.2) ...一切都很好.但是当我将应用程序发送给客户并在 HTC Holiday ..
发布时间:2021-12-29 08:31:32 移动开发

如何处理或避免 C++ 中的堆栈溢出

在 C++ 中,堆栈溢出通常会导致程序不可恢复的崩溃.对于需要真正健壮的程序,这是一种不可接受的行为,特别是因为堆栈大小是有限的.关于如何处理问题的几个问题. 有没有办法通过通用技术来防止堆栈溢出.(一个可扩展、强大的解决方案,包括处理消耗大量堆栈的外部库等) 如果发生堆栈溢出,有没有办法处理它们?最好是,在有一个处理程序来处理那个问题之前,堆栈会被解开. 有些语言具有可扩展堆栈 ..
发布时间:2021-12-26 12:53:34 C/C++开发

Stackoverflow:由嵌套视图引起?

刷新 SlidingTray 中的视图时发生崩溃(自定义 SlidingDrawer 来自顶部). 我不确定是什么导致了它......但我的第一个猜测是它是由于嵌套布局的数量...... 嵌套布局的最大数量是多少? 是否特定于设备,我如何确定这是否是原因? 如果不是,这些原因中的任何一个都会导致它..是什么? 堆栈跟踪: E/AndroidRuntime(2199) ..
发布时间:2021-12-24 23:16:52 移动开发

t 和 *t 的区别

包主导入“fmt"类型 TT 结构 {一个整数b float32字符串}func (t *TT) String() 字符串 {return fmt.Sprintf("%+v", *t)}功能主(){tt := &TT{3, 4, "5"}fmt.Printf(tt.String())} 代码可以很好地工作.但是如果我像下面那样更改 String 方法,它将导致死循环.区别在于*t 被替换为t.为 ..
发布时间:2021-12-23 09:12:37 其他开发

在 Java 中序列化对象时出现 StackOverflowError

我正在使用 Swing 用 Ja​​va 编写应用程序.我正在尝试实现在我运行的模拟中保存和加载模拟状态的功能.整个模拟保持为一个对象,与 Swing 断开连接.我正在尝试使用以下代码序列化我的 Simulation 类: public void saveSimulationState(String simulationFile) {尝试 {可序列化对象 = this.sm;ObjectOutp ..
发布时间:2021-12-21 22:02:35 Java开发

分段错误和堆栈溢出有什么区别?

例如,当我们调用递归函数时,连续的调用存储在堆栈中.但是,由于错误,如果它无限持续下去,则错误是“分段错误"(如 GCC 所示). 不应该是“堆栈溢出"吗?那么两者的基本区别是什么呢? 顺便说一句,解释会比维基百科链接更有帮助(通过它,但没有对特定查询的回答). 解决方案 Stack overflow is [a] cause,segmentation fault is the ..
发布时间:2021-12-21 09:57:40 其他开发

如何防止我的 Ackerman 函数溢出堆栈?

有没有办法防止我的 Ackerman 函数创建堆栈溢出是针对相对较小的数字,即 (4,2).这是错误 {无法计算表达式,因为当前线程在堆栈中溢出状态.} private void Button1Click(object sender, EventArgs e){var t = 阿克曼 (4,2);label1.Text += string.Format(": {0}", t);label1 ..
发布时间:2021-12-16 09:04:01 C#/.NET