Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 用gfortran读取数据_Arrays_Gfortran - Fatal编程技术网

Arrays 用gfortran读取数据

Arrays 用gfortran读取数据,arrays,gfortran,Arrays,Gfortran,我想用一行fortran代码读取数据数组:read(irdcld,9101,end=9000)ctest,lay,frac,(datbinsa(ibin),&ibin=1,nbins),(datbinsb(ibin),ibin=1,nbins) 我正在用gfortran编译。不幸的是,出现此错误消息:read(irdcld,9101,end=9000)ctest,lay,frac,(datbina(ibin),&1错误:read语句中的预期变量位于(1) 如果我只输入:read(irdcld,9

我想用一行fortran代码读取数据数组:
read(irdcld,9101,end=9000)ctest,lay,frac,(datbinsa(ibin),&ibin=1,nbins),(datbinsb(ibin),ibin=1,nbins)

我正在用gfortran编译。不幸的是,出现此错误消息:
read(irdcld,9101,end=9000)ctest,lay,frac,(datbina(ibin),&1错误:read语句中的预期变量位于(1)


如果我只输入:
read(irdcld,9101,end=9000)ctest,lay,frac,datbinsa(ibin),我就可以读取这些行
但我想阅读整个数组!当使用ggfortran作为编译器时,我如何读取数组?感谢您的帮助!!

&
是自由源代码格式Fortran文件中的语句延续符号。它应该是行中最后一个非空符号,语句将在下一行继续:

 read(irdcld, 9101,end=9000) ctest, lay, frac, (datbinsa(ibin), &
      ibin= 1, nbins), (datbinsb(ibin), ibin= 1, nbins)

如果将两行连接在一起,则应删除
&
。但是,您还必须遵守最大行长,即自由源代码形式中的132个字符。

感谢您的解释。有两个问题:一个是我应该放在一行中。第二个是像这样更改数组读数:read(irdcld,9101,end=9000)ctest,lay,frac,datbinsa(1:nbins),datbinsb(1:nbins)
datbinsa(1:nbins)
(datbinsa(ibin),ibin=1,nbins)
在这种情况下应该是一样的。后一种形式被称为隐含do循环,在语言引入向量运算之前,在旧的Fortran代码中被大量使用。不幸的是(datbina(ibin),ibin=1,nbins)不起作用,因为gfortran似乎不喜欢“(”符号。它将错误消息“error:Expected variable in READ statement at(1)”放在“(”符号处。这是我的问题,为什么???@user1809699,源文件的扩展名是什么?
.f
.f90
.f
,还有什么?