24小时热门版块排行榜    

查看: 3426  |  回复: 13

gelitao1234

金虫 (正式写手)

[求助] 请教 fortran 运行错误的原因

Error        1         Error: The storage extent of the dummy argument exceeds that of the actual argument.   [YY]        此类错误是是什么原因?怎么改正?
回复此楼
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

hklulu

木虫 (正式写手)

000

【答案】应助回帖

感谢参与,应助指数 +1
实参和虚参不匹配或用到了没有声明的数组。
00
2楼2012-05-01 12:27:29
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

hklulu

木虫 (正式写手)

000

【答案】应助回帖


xzhdty: 金币+1, 欢迎常来程序语言看看 2012-05-02 06:43:50
如果数组长度不确定,可以用(*)在被调用的函数中声明数组。
00
3楼2012-05-01 12:29:45
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

Carpathia

银虫 (小有名气)

【答案】应助回帖


感谢参与,应助指数 +1
xzhdty: 金币+1, 欢迎常来程序语言讨论 2012-05-02 06:43:36
函数体里的形式参数的数组大小超过了主程序里的实际参数数组大小,也就是参数不匹配。
更改可以是使用(1)显式结构形参数组,(2)不定结构形参数组
1) 显式结构形参数组:
subroutine subr(n,array)
integer:: n
real:: array(n)

2) 不定结构形参数组
subroutine subr(array)
real:: array(
追求理想的道路上东张西望
4楼2012-05-01 13:02:53
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

Carpathia

银虫 (小有名气)

ls的是冒号和括号
追求理想的道路上东张西望
5楼2012-05-01 13:05:34
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

gelitao1234

金虫 (正式写手)

引用回帖:
2楼: Originally posted by hklulu at 2012-05-01 12:27:29:
实参和虚参不匹配或用到了没有声明的数组。

非常感谢你的帮助,有个 问题是为什么程序在VISUAL studio上运行出现这种错误,而在fortran 90/95上运行正常,没有错误呢?
6楼2012-05-03 13:43:45
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

gelitao1234

金虫 (正式写手)

引用回帖:
4楼: Originally posted by Carpathia at 2012-05-01 13:02:53:
函数体里的形式参数的数组大小超过了主程序里的实际参数数组大小,也就是参数不匹配。
更改可以是使用(1)显式结构形参数组,(2)不定结构形参数组
1) 显式结构形参数组:
subroutine subr(n,array)
integer:: n ...

非常感谢你的帮助,有个 问题是为什么程序在VISUAL studio上运行出现这种错误,而在fortran 90/95上运行正常,没有错误呢?
7楼2012-05-03 13:43:57
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

gelitao1234

金虫 (正式写手)

引用回帖:
5楼: Originally posted by Carpathia at 2012-05-01 13:05:34:
ls的是冒号和括号

非常感谢你的帮助,有个 问题是为什么程序在VISUAL studio上运行出现这种错误,而在fortran 90/95上运行正常,没有错误呢?
8楼2012-05-03 13:44:07
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

hklulu

木虫 (正式写手)

000

【答案】应助回帖

引用回帖:
6楼: Originally posted by gelitao1234 at 2012-05-03 15:43:45:
非常感谢你的帮助,有个 问题是为什么程序在VISUAL studio上运行出现这种错误,而在fortran 90/95上运行正常,没有错误呢?

这是因为有些高版本的编译器自动扩界,编译通常可以通过,但可能会有警告。建议楼主还是修改一下代码。

也可能跟77和90,95的动态数组有关。
00
9楼2012-05-03 15:19:44
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

hklulu

木虫 (正式写手)

000

【答案】应助回帖

这个问题主要是由于有些编译器要求:在子函数中保证传递进来的数组在主程序中的下标也是从1开始的。

如在你的主程序中三维数组都是从零开始的,而在子函数中确实从1开始的,并且数组上下界都不一样,这造成了有些编译器认为是严重的错误,我也认为是,从而停止编译。

从你的程序来看,三维数组的定义不统一,为什么要不一样呢?强烈建议上下界一样。

再要注意部分赋值问题。在程序的111,112,118,119,127,145,147等行上,原来三维的数组进行了二维赋值,为何不用三个循环赋值呢,这样很容易出现问题。
00
10楼2012-05-04 15:08:51
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 gelitao1234 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿东华大学化学070300,求调剂 +7 2117205181 2026-03-21 8/400 2026-03-22 22:55 by chixmc
[考研] 328求调剂,英语六级551,有科研经历 +6 生物工程调剂 2026-03-17 10/500 2026-03-22 20:22 by edmund7
[考研] 315分,诚求调剂,材料与化工085600 +3 13756423260 2026-03-22 3/150 2026-03-22 20:11 by edmund7
[考研] 环境学硕288求调剂 +6 皮皮皮123456 2026-03-22 6/300 2026-03-22 16:52 by i_cooler
[考研] 能源材料化学课题组招收硕士研究生8-10名 +5 脱颖而出 2026-03-16 17/850 2026-03-22 15:18 by 脱颖而出
[考研] 0856材料专硕353求调剂 +4 NIFFFfff 2026-03-20 4/200 2026-03-22 09:49 by 2026paper
[考研] 266求调剂 +3 哇呼哼呼哼 2026-03-20 3/150 2026-03-21 16:46 by barlinike
[考研] 279求调剂 +5 红衣隐官 2026-03-21 5/250 2026-03-21 14:59 by lature00
[考研] 332求调剂 +3 凤凰院丁真 2026-03-20 3/150 2026-03-21 10:27 by luoyongfeng
[考研] 二本跨考郑大材料306英一数二 +3 z1z2z3879 2026-03-17 3/150 2026-03-21 02:29 by JourneyLucky
[考研] 材料 336 求调剂 +3 An@. 2026-03-18 4/200 2026-03-21 01:39 by JourneyLucky
[考研] 271材料工程求调剂 +8 .6lL 2026-03-18 8/400 2026-03-21 00:58 by JourneyLucky
[考研] 294求调剂材料与化工专硕 +15 陌の森林 2026-03-18 15/750 2026-03-20 23:28 by JourneyLucky
[考研] 一志愿武汉理工材料工程专硕调剂 +9 Doleres 2026-03-19 9/450 2026-03-20 22:36 by JourneyLucky
[考研] 一志愿西南交通 专硕 材料355 本科双非 求调剂 +5 西南交通专材355 2026-03-19 5/250 2026-03-20 21:10 by JourneyLucky
[考研] 一志愿 南京航空航天大学大学 ,080500材料科学与工程学硕 +5 @taotao 2026-03-20 5/250 2026-03-20 20:16 by JourneyLucky
[考研] 一志愿南理工085701环境302求调剂院校 +3 葵梓卫队 2026-03-20 3/150 2026-03-20 19:28 by zhukairuo
[考研] 工科材料085601 279求调剂 +7 困于星晨 2026-03-17 9/450 2026-03-20 17:38 by 无懈可击111
[考研] 求调剂 +3 暗涌afhb 2026-03-16 3/150 2026-03-20 00:28 by 河南大学校友
[考研] 一志愿福大288有机化学,求调剂 +3 小木虫200408204 2026-03-18 3/150 2026-03-19 13:31 by houyaoxu
信息提示
请填处理意见