回 帖 发 新 帖 刷新版面

主题:为何debug时一切正常,而release时就stack overflow呢

如题,使用debug编译模式时,能计算,但用release时就stack overflow,请较为啥会这样,如何解决?

回复列表 (共9个回复)

沙发

因为你只设置了debug的stack size, 没有设置release的stack size.

板凳

这个问题不好说。如果你也Debug和Release设置了同样的Stack大小,或者都用的默认大小,也可能是你的代码里有隐含的错误。但这个错误我也不太好说是什么。

3 楼


设置了debug和release的stack size为同样大小,release仍然不行。隐含的错误一般由什么原因引起的呢?

4 楼

那有没有设置release更大一点? 如果是代码原因引起的话你就要慢慢调了. 因为啥信息都没了.

5 楼

如楼上所言,这个隐含的错误很难一言说清楚,说实话,让我碰到,我也很头疼

6 楼

我遇到用DEBUG和 RELEASE计算的结果不一样,两个都不正常,好像fortran计算好玄乎啊,不懂错从何出

7 楼

用DEBUG模式能算一结果,但用RELEASE 模式显示RUN TIME ERROR,郁闷啊

8 楼

楼主, 你没有认真调试. 按你这样, 用C写一样会有run time error. fortran编译器我只试过用openmp并行的时候碰到过bug.

9 楼

如果你能保证全部变量初始化了,算法转换成代码完全正确,并且该算法确实可靠,代码也没隐含问题,那么就可以确定是编译器bug了。

我来回复

您尚未登录,请登录后再回复。点此登录或注册