首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Fortran90编译错误

用Fortran90编译错误
EN

Stack Overflow用户
提问于 2013-11-08 21:11:02
回答 1查看 426关注 0票数 0

所有的,我已经为这些错误斗争了几个小时,下面是我的代码:

代码语言:javascript
复制
program hello
implicit none
integer :: k, n, iterator
integer, dimension(18) :: objectArray

call SetVariablesFromFile()
do iterator = 1, 18
    write(*,*) objectArray(iterator)
end do


contains
subroutine SetVariablesFromFile()
    IMPLICIT NONE
    integer :: status, ierror, i, x

    open(UNIT = 1, FILE = 'input.txt', &
    ACTION = 'READ',STATUS = 'old', IOSTAT = ierror)
    if(ierror /= 0) THEN
        write(*, *) "Failed to open input.txt!"
        stop
    end if

    do i = 1, 18
        objectArray(i) = read(1, *, IOSTAT = status) x
        if (status > 0) then
            write(*,*) "Error reading input file"
            exit
        else if (status < 0) then
            write(*,*) "EOF"
            exit
        end if
    end do
    close(1)

END subroutine SetVariablesFromFile

end program hello

我收到编译错误:

  1. 制造:* hello.o Error1
  2. (1)参数列表中的语法错误

我在网上读到后一个错误可能是因为超过132个字符的代码行很长,这似乎不是问题所在。任何帮助都将不胜感激!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-08 21:29:20

这,

代码语言:javascript
复制
objectArray(i) = read(1, *, IOSTAT = status) x

是无效的Fortran。你得把它写成

代码语言:javascript
复制
read(1,*,iostat=status) objectArray(i)

以正确的形式设置它,我在ifort12.1和gfortran 4.4.3中都没有收到编译器错误

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

https://stackoverflow.com/questions/19868566

复制
相关文章

相似问题

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