fortran Int64整数太大了

时间:2015-02-14 17:25:25

标签: int fortran

我正在尝试使用Integer(int64)设置一个整数并设置问题。当我致电huge时,我会得到9223372036854775807。但是当我尝试将4807526976设置在范围内时,我会收到编译错误。

 Integer (Int64) :: i

  Write (*,*) huge (i)
 i = 4807526976
 Write (*,*) "i: ", i

编译器正在给我

Error: Integer too big for its kind at (1).

1 个答案:

答案 0 :(得分:3)

int64不是整数的默认种类。在评估赋值的RHS时,编译器会尝试使用4807526976结束的默认整数种类(因此)发出警告。

手动指定种类

i = 4807526976_int64

就像一个魅力。顺便说一句:ifort似乎很聪明,可以自己正确地选择那种; - )