Я конвертирую код FORTRAN в C ++. Поняв код FORTRAN, я наткнулся на следующий фрагмент кода на FORTRAN.
DIMENSION X(50),Y(50),PARA(6,9)
DIMENSION AMPA(12),FCUR(20),VER(20),AMPS(20)
Я понимаю, что DIMENSION не нуждается ни в каком типе данных в FORTRAN. Но я не могу понять, какие будут типы данных по умолчанию для X, Y, PARA и т. Д. Это целое число по умолчанию?
Классически, переменные Фортрана с именами начинающимися [I-N]
мы INTEGER
а все остальное было REAL
, Таким образом, наиболее вероятный тип для этих переменных в C ++ float
,
float X[50], Y[50], PARA[6][9];
float AMPA[12], FCUR[20], VER[20], AMPS[20];
Тем не менее, с 2D-массивами, Fortran использует основной порядок столбца где C и C ++ используют порядок основных строк. Возможно, вам придется беспокоиться об этом для 2D-массива. Вы также можете решить преобразовать имена в нижний регистр.
В Фортране переменные, имена которых начинаются с символов от I до N в алфавите (помня Фортран не чувствительны к регистру) косвенным образом integer
и все остальное неявно real
если не указано иное — это, вероятно, будет соответствовать int
а также float
в C ++.
Еще в Фортране 77 это считалось плохой практикой, и сегодня принято начинать каждую программу и модуль Фортрана с выражения implicit none
требовать, чтобы каждая переменная была объявлена с явным типом.