1
の名前に無効な文字私はコンパイルエラー:(1)
program test
implicit none
integer, parameter :: N = 3
real(8), parameter :: &
A(N,N) = reshape((/1.5d0,1d0,1d0,1d0,1.5d0,2d0,1d0,1d0,3d0/), shape(A)) &
b(N) = (/ 5d0,-3d0,8d0 /)
print *, A
end program
を書いたがtest.fとして保存され、そしてgfortran -ffree-form -Wall -Werror -ffree-line-length-none test.f
でコンパイルエラーを得ました。
test.f:6:24:
A(N,N) = reshape((/1.5d0,1d0,1d0,1d0,1.5d0,2d0,1d0,1d0,3d0/), shape(A)) &
1
Error: Invalid character in name at (1)
test.f:9:12:
print *, A
1
Error: Symbol ‘a’ at (1) has no IMPLICIT type
何が問題なのですか。
コンパイラは、GNU Fortran(GCC)バージョン6.1.1です。
提案を: '置き換え本当の(8)'名前付き定数、たとえば、 'を使用して、固有:: ISO_FORTRAN_ENV、のみ:WP =>最後に、リテラルを '1.5_wp、2.0e + 3_wp'と書くことができます。それ以外の方法はありません。 – jlokimlin