首页 > 解决方案 > 即使我使用 REAL(8) 在 Fortran 中声明它,我是否必须在将值归因于变量时使用“.d0”?

问题描述

我使用 Fortran 语言相对较新,我正在处理一个预先编写的程序,我必须进行一些更改,并且我在程序的语句区域中将所有 8 字节变量声明为 REAL(8)。但是,在将数值赋予变量和/或数组时,原始程序的作者总是使用如下内容:

...

实数(8) A

A = 1.d0

...

考虑到“A”不是双精度,而是字面上的真实(8),即使认为 - 我认为 - 两者都具有相同的种类,这是否是严格必要的?

此外,我在某处读到应该放弃使用 REAL(8)?是这样吗?为什么?

据我所知(我当然可能是错的),DOUBLE PRECISION 变量中使用的字节数取决于编译器,这使得它很危险(我假设)或者至少不希望使用它来代替 REAL(8) ,如果我的意图是声明一个 8 字节的变量。

(我正在使用 Fortran 90/95)

我将不胜感激地收到评论以澄清这个问题!非常感谢!

标签: variablesfortranbyteprecisiondeclare

解决方案


推荐阅读