fortran Int64 整数太大
fortran Int64 Integer too big
我正在尝试使用 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).
int64
不是整数的默认类型。在评估赋值的 RHS 时,编译器尝试使用默认整数类型 4807526976
结束(因此)发出警告。
手动指定种类
i = 4807526976_int64
很有魅力。顺便说一句:ifort
似乎足够聪明,可以自己正确选择种类 ;-)
我正在尝试使用 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).
int64
不是整数的默认类型。在评估赋值的 RHS 时,编译器尝试使用默认整数类型 4807526976
结束(因此)发出警告。
手动指定种类
i = 4807526976_int64
很有魅力。顺便说一句:ifort
似乎足够聪明,可以自己正确选择种类 ;-)