下面的程序用ifort(版本12),但編譯不與GFortran(高達4.8版本):Fortran的2D陣列初始化
PROGRAM TEST
IMPLICIT NONE
REAL,DIMENSION(2,2)::X=(/1,2,3,4/)
WRITE(*,*) X
END PROGRAM TEST
GFortran給出了錯誤
REAL,DIMENSION(2,2)::X=(/1,2,3,4/)
1
Error: Incompatible ranks 2 and 1 in assignment at (1)
Ifort編譯程序並給出預期的輸出。這是GFortran中的一個錯誤還是英特爾fortran只是允許非標準的數組初始化?
它是否在初始化時使用'RESHAPE()'語句進行編譯。 – ja72