我正在 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