小编Mit*_*hil的帖子

TRUE 的数值相当于 -1?

我正在 Visual Studio 2012 中使用 Intel Fortran 来编译 Fortran 代码。当我尝试使用逻辑运算符时,我注意到独立的逻辑表达式会按预期产生 T 或 F。但是,如果我需要数字 T 或 F(0 或 1),当逻辑结果为 T 时我会得到 -1。

例如:

integer*4 a
a = 1
logicval = (node(5,L).gt.0)
numval =  1*(node(5,L).gt.0)
write(*,*) logicval, numval
Run Code Online (Sandbox Code Playgroud)

会输出

时间,-1

有没有办法可以重新定义分配给 T 和 F 的数值?

fortran logical-operators visual-studio visual-studio-2012 intel-fortran

4
推荐指数
1
解决办法
2005
查看次数