2009-01-24 146 views
3

g77(GNU Fortran 77编译器)中是否有类似于“-fdefault-real-8”gfortran(GNU Fortran 95编译器)的选项?该选项将默认实型设置为8字节宽类型。g77中的双精度默认值,Fortran编译器

我目前有单精度算术限制我的准确性的代码,所以我需要双精度。 (这不仅仅是我希望以双精度形式出现的中间值,这是一个FPU标志;我希望一切都是双精度的。)我知道我还有其他一些方法(使用gfortran,使用其他编译器,或者将所有REALs改为DOUBLE PRECISIONs),但它们不适合我的情况。

那么,有没有什么办法可以在g77中将默认实型设置为双精度,即8个字节宽?

+0

A.雷克斯,我很好奇。你用gfortran看到了什么错误? – 2009-01-26 15:19:08

+0

@ ScottieT812:这实际上是我朋友的代码,所以我不知道错误是什么。他说他已经以任何方式解决了这个问题,部分是用你的答案。 – 2009-01-29 00:04:47

回答

1

如果在手册页中找不到标志,可以尝试#define宏。

#define REAL DOUBLE PRECISION 
+0

好主意!我认为这留下了常量仍然是单精度的问题,但我认为没关系......(见http://www.fourmilab.ch/fourmilog/archives/2004-11/000432.html) – 2009-01-24 21:13:07

0

由于很多FORTRAN 77的仍然是合法的,是有可能使用gfortran来编译FORTRAN 77码,并提供-fdefault-real-8选项?