2017-02-07 5 views
0

У меня был старый Fortran 90 кода с помощью следующей команды:Назначение массивов в Intel Fortran

data1(1:100) = data_all(:) 

где data_all является больше массив, то data1. Поскольку я знаю, что это не сильный синтаксис, он отлично работает при использовании Visual Studio 2008.

Недавно я переключился на Visual Studio 2013, и я больше не могу использовать этот код, так как он пытается заполнить 101-я позиция data1. Каковы правильные параметры компилятора, чтобы принять это?

+0

Visual Studio не включает в себя компилятор FORTRAN , Какой компилятор/аддон вы используете? На какой языковой версии он нацелен? Почти наверняка FORTRAN90 * не * по умолчанию. –

+0

Visual Studio 2013, с Intel Parallel Studio XE 2017 –

+1

VS - это только IDE. Готов поспорить, что Intel Parallel Studio нацеливает Fortran 2008 по умолчанию –

ответ

0

Вероятно, что-то вроде этого:

data1(1:100) = data_all(1:100) 

Если data1 100 элементов, то

data1 = data_all(1:100) 

Если вы хотите, чтобы другие потом:

data1 = data_all(istart:(istart + (SIZE(data1) - 1)) 

 Смежные вопросы

  • Нет связанных вопросов^_^