arrays - FORTRAN 中的数组声明,适合初学者

标签 arrays fortran declaration

这是一个初学者的问题,但我还没有找到一个全面的答案。

以下声明有什么不同(如果有的话)?

CHARACTER(5) :: a
CHARACTER, DIMENSION (5) :: b
CHARACTER(LEN=5) :: c
CHARACTER :: d(5)
CHARACTER :: e*5

并且:是否所有这些声明都可以使用其他类型,例如 REAL

最佳答案

不管是什么类型,<type>,dimension(5) :: b<type> :: b(5)相同并表示长度为 5 的数组. <type>可以是例如character , integer , real , logical等。

character(5)character(len=5) 的简写并声明一个长度为 5 的字符串.如果省略长度,则假定为打开。 character :: d(5)是一个由五个长度为 1 的字符串组成的数组。

character :: e*5是用于指定字符串长度的旧变体。

len是字符串所固有的(并且对于例如 float 没有意义)。您可以指定自己的派生类型具有长度 len ,虽然(“参数化派生类型”)。对于整数和 float (以及其他一些),您可以指定 kind以类似的方式计算变量。

详情请咨询Fortran 2008 Standard , channel 。 4.4.3.2 “字符类型说明符”

关于arrays - FORTRAN 中的数组声明,适合初学者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28863369/

相关文章:

python - 使用 mpifort 编译程序时包含的模块出现问题

c++ - 图实现的邻接矩阵中的数组 vector 错误

java - 是否可以以声明方式配置非全局监听器?

c - 如何在结构体中初始化结构体数组?

arrays - jq - 将对象列表转换为汇总对象

c - 使用 strcat 的错误字符串连接

队列数据结构的Java数组表示

Fortran 指数运算顺序

fortran - 构建 MXNET 时如何修复对 _gfortran_concat_string 和 _gfortran_etime 的 undefined reference ?

Android:声明静态位图?是还是不是?