我正在使用标志 /check:uninit 在调试模式下编译我的 Fortran 代码,该标志在属性 -> Fortran -> 运行时 -> 检查未初始化的变量下激活。
我注意到,当我运行我的代码时,有时执行会正确停止指示未初始化的变量,有时它会继续运行而没有问题,并且仅单步执行我的代码我发现某处我有一个值为 -6.277438562204192D+066 的变量。为什么编译器并不总是能够检测到未初始化的变量?
在特定情况下,我提到未检测到的变量是模块中定义的全局变量,我不确定这是否有问题,也许编译器只能检测到本地未初始化的变量?如果是这种情况,我如何检测全局未初始化的变量?