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, только: сор => REAL64', затем объявите 'real (wp) :: A (N, N). Наконец, напишите литералы как' 1.5_wp, 2.0e + 3_wp' и никогда иначе. – jlokimlin