我试图移动到Intel Fortran线以下的gfortran,但我得到了以下错误:
DOUBLE PRECISION, DIMENSION(0:0,0:0) :: value = (/ -999D99 /)
Incompatible ranks 2 and 1 in assignment at (1)如果我正确地理解了它,我们将创建一个带有1元素的二维数组。我跟着修车来的。这个标准符合吗?
DOUBLE PRECISION, DIMENSION(0:0,0:0) :: value = reshape ((/-999D99/), shape(value))发布于 2015-08-06 09:50:14
不允许在不同级别的数组之间分配任务(即使在初始化中)。因此,行
...DIMENSION(0:0,0:0) :: value = (/ -999D99 /)是非法的。
将右侧重塑为2级数组
...DIMENSION(0:0,0:0) :: value = reshape ((/-999D99/), shape(value))是一个标准的符合标准的解决方案,但更容易分配标量:
...DIMENSION(0:0,0:0) :: value = -999D99当然,只有在只有一个值的情况下,这才能起作用。它将分配给左侧数组的所有元素。
https://stackoverflow.com/questions/31851299
复制相似问题