Global-local 发表于 2005-12-7 20:14:38

fortan 编程中执行时出现 stack overflow

在程序执行时,出现错误stack overflow
请问如何解决

yp51920 发表于 2005-12-7 20:17:30

Re:fortan 编程中执行时出现 stack overflow

栈溢出

Global-local 发表于 2005-12-7 20:29:13

Re:fortan 编程中执行时出现 stack overflow

我也知道时栈溢出,请问如何解决
或编程时需注意什么

iwtry 发表于 2005-12-8 11:09:51

Re:fortan 编程中执行时出现 stack overflow

有可能是在出错的地方数组内指标为0,比如a(0),这样会报错的

quartzbj 发表于 2005-12-8 15:56:11

Re:fortan 编程中执行时出现 stack overflow

最有可能,最好一步步查
有时候计算一步时,一些量的值已经发生了变化,但是你不知道。
经验啊

hillyuan 发表于 2005-12-9 12:57:04

Re:fortan 编程中执行时出现 stack overflow

参考
http://www.simwe.com/forum/viewthread.php?tid=439067

chengcs 发表于 2005-12-15 10:43:55

Re:fortan 编程中执行时出现 stack overflow

解决stack flow: 一个方法,看一下你的数组有没有必要开那么多,因为visual fortran里默认的只能开1M;有些从工作站上拿下来的程序为 了占内存,开了个很大的数组,看看是不是可以去掉
               第二个方法,如果却是有必要开这个数组,那么改setting:project -> setting -> link ->在下面的option里加上:
                /stack: size
                注意好格式(参照其它option的写法),size是字节数,比如你要开4M,那就写4194304
               还有一些其它方法,可以在帮助里查stack,学一下

dynacn 发表于 2005-12-21 11:04:59

Re:fortan 编程中执行时出现 stack overflow

我遇到的栈溢出的情况是:试图将一个很大的二维数组作为函数变量传递给子程序使用,后来我将子程序完成的功能放到主程序完成就避免了这个问题。
数组内指标超出你已定义的范围一般不会给出栈溢出的提示,而是给出array bounds exceed。 我想你的问题会不会跟我的一样,写在这里供你参考,总之,要尽可能避免调用子程序时传递很大的数组。
页: [1]
查看完整版本: fortan 编程中执行时出现 stack overflow