翻译过来的意思是“REAL在这个平台上是不被支持的”,估计和你的开发环境(如操作系统、编译器等)有关,查查帮助,换一种数据类型,应该就可以解决问题了。
先声明类型,再定义常量。例如:real(16)::a parameter(a=1.)
多数ARK反内核工具中都存在驱动级别的内存转存功能,该功能可以将应用层中运行进程的内存镜像转存到特定...
REAL REAL REAL REAL 反正切 -- 反双曲正切 -- -- r_asin( x ) r_asind( x ) r_asinh( x ) r_asinp( x ) r_asinpi( x ) REAL REAL REAL REAL REAL 反正弦 -- 反双曲正弦 -- -- r_atan2(( y, x ) r_atan2d( y, x ) r_atan2pi( y...
kind=16是表示16位二进制数表达的实型吧。要得到更精确的结果,请用kind=32或kind=64。即使如此,用实数计算,很难做到你要求的严格相等!
目前有 Absoft,Intel Fortran,GFortran,NAG,Lahey 等编译器支持 kind=16,不需要64位。具体请参考编译器对比:http://www.fcode.cn/codetools-28-1.html
Fortran中的数字类型分为整数(Integer),实数(Real)和复数(Complex)三种类型。复数类型由实部和虚部的两个实数组成,这里我们不多讨论。 通常能够在两种情况下见到数字,其一是标定一变量的类型,Integer 、Real 和Complex 均用于定义其所示类型的变量;其二则是直接作为数字常量出现,如 12、12.008、1.2E5 ,这种方式在C++...
有些编译器,比如cvf6.6, 好像不支持 real*16。不过有FM 可以拓展到任意位数。complex*16 倒是常见 gmtang1212 2楼: Originally posted by pippi6 at 2013-08-13 21:40:03 你是什么编译器?有些编译器,比如cvf6.6, 好像不支持 real*16。不过有FM 可以拓展到任意位数。complex*16 倒是常见 用的是intel的...
SUBROUTINE SWAP(AUTOARR1,AUTOARR2,N) IMPLICIT NONE INTEGER:: N REAL,DIMENSION(N) :: AUTOARR1,AUTOARR2 REAL,ALLOCATABLE,DIMENSION(:)::DYNARR ALLOCATE(DYNARR(N)) DYNARR(:N)=AUTOARR1(:N) AUTOARR1(:N)=AUTOARR2(:N) AUTOARR2(:N)=DYNARR(:N) DEALLOCATE(DYNARR) END SUBROUTINE SWAP...
integer:16 integer:32 integer:64 例如: –xtypemap=real:64,double:64,integer:64 可同时将缺省的 REAL 和DOUBLE 映射到 8 字节。 此选项适用于使用缺省规范(不带显式字节大小)声明的所有变量,例如 REAL XYZ(生成 64 位 XYZ)。此外,所有的单精度 REAL 常量将被提升为 REAL*8 常量。 请注意,INTEG...