主题:关于trim和len_trim可处理最大长度字符串的问题
rainboat8
[专家分:30] 发布于 2011-07-24 10:12:00
小弟的一个程序里需要一个很大的字符串,长度定义了一百万。在使用trim和len_trim函数来处理字符串的时候,崩溃掉了,然后试着缩短它的定义长度,发现len_trim最多能处理大约95万长度的字符串,trim()则只能处理49万的,再长了就崩溃。
请问这是怎么回事啊,能通过什么设置来加长所定义的字符串而不崩溃吗?
调试时出现的错误是堆栈溢出。
回复列表 (共2个回复)
沙发
adda [专家分:1520] 发布于 2011-07-24 10:52:00
intel fortran帮助中给出的character最大长度是7198
长度为一百万的字符串,大小为1M,超出了默认堆栈大小
解决方法:
1。增大堆栈,不知是否可行,可以试试
2。自己编一个trim子程序,不用函数
板凳
rainboat8 [专家分:30] 发布于 2011-07-24 11:07:00
[quote]
intel fortran帮助中给出的character最大长度是7198
长度为一百万的字符串,大小为1M,超出了默认堆栈大小
解决方法:
1。增大堆栈,不知是否可行,可以试试
2。自己编一个trim子程序,不用函数[/quote]
恩,我把堆栈增大到了10M就可以了,谢谢啊。请问CVF6.5的默认最大字符串长度是多少呢,我查不到
我来回复