如何在第一列中定义带有整数变量的数组,在第二列中定义字符串变量?
例如:
理想情况下,数组mELF
将在第一列和第三列中包含数字,在第三列中包含字符串。我只使用整数,但现在我想混合不同类型的变量。有可能吗?
INTEGER, save :: mELF(11000, 11000, 11000)
DATA mELF/11000*11000*11000*0/
答案 0 :(得分:3)
不,不可能在FORTRAN77或该语言的任何更新版本中混合数组元素的类型。在数组中,所有元素必须具有相同的类型(和种类)。
在现代Fortran中,即90及更高版本,您可以定义派生类型,例如;
type my_type
integer :: col1, col3
character(len=16) :: col2
end type
然后声明一个数组,如
type(my_type), dimension(:), allocatable :: my_array
现在您有了一个数据结构,您可以使用
等表达式进行切片my_array % col2
my_array(1:12) % col1
my_array(2:6) % col2(5:8)
等等。