首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >预期的括号错误gfortran

预期的括号错误gfortran
EN

Stack Overflow用户
提问于 2015-08-28 18:08:19
回答 1查看 534关注 0票数 1

我正在尝试使用gfortran v.4.8.2编译一些fortran代码。当我编译时,我得到以下错误:

代码语言:javascript
复制
ant_driver.f90:185.72:

 if (model%geometry%topg(ew,ns)-model%climate%eus(ew,ns)
                                                                    1
Error: Syntax error in IF-expression at (1)
ant_driver.f90:187.119:

ry%thck(ew,ns) = -rhoo/rhoi * (model%geometry%topg(ew,ns)-   model%climate%eus(ew,
                                                                       1
Error: Expected a right parenthesis in expression at (1)
ant_driver.f90:188.27:


endif
                           1
Error: Expecting END DO statement at (1)
ant_driver.f90:248.82:

odel%geometry%usrf(ew,ns) = - (model%geometry%topg(ew,ns)-model%climate%eus(ew,
                                                                       1
Error: Expected a right parenthesis in expression at (1)
ant_driver.f90:260.107:

model%geometry%usrf(ew,ns) - (model%geometry%topg(ew,ns)-model%climate%eus(ew,
                                                                       1
Error: Expected a right parenthesis in expression at (1)
ant_driver.f90:174.30:

 call glide_set_eus(model,eus)
                     1
Error: Rank mismatch in argument 'inarray' at (1) (scalar and rank-2)

错误与以下代码行有关: 185-188:

代码语言:javascript
复制
if (model%geometry%topg(ew,ns)-model%climate%eus(ew,ns) < 0 .and.    model%geometry%thck(ew,ns) == 0 .and. &
                        mask(ew,ns) == 1) then
                            model%geometry%thck(ew,ns) = -rhoo/rhoi * (model%geometry%topg(ew,ns)-model%climate%eus(ew,ns))
                    endif

248:

代码语言:javascript
复制
model%geometry%usrf(ew,ns) = - (model%geometry%topg(ew,ns)-model%climate%eus(ew,ns)) * rhoo/rhoi &
                                             + (model%geometry%topg(ew,ns)-model%climate%eus(ew,ns))

260:

代码语言:javascript
复制
model%geometry%thck(ew,ns) = model%geometry%usrf(ew,ns) - (model%geometry%topg(ew,ns)-model%climate%eus(ew,ns))

174:

代码语言:javascript
复制
call glide_set_eus(model,eus)

任何帮助都非常感谢。谢谢您抽时间见我。

EN

回答 1

Stack Overflow用户

发布于 2015-08-28 21:18:03

您的错误是由于行截断造成的。对于固定格式的Fortran,指定的行长为72个字符;对于自由格式的Fortran,指定的行长应为132个字符。由于.f90扩展名,您的源代码应该被解释为自由格式,但是您可以使用-ffree-form在gfortran中强制使用自由格式。您还可以分别使用选项-ffixed-line-length-n-ffree-line-length-n更改固定格式和自由格式的源中的最大行长,其中n是字符数,0none的值表示无限行长。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32268481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档