Debugging 如何在调试模式下显示fortran子例程中的数组(netbeans和代码块)?

Debugging 如何在调试模式下显示fortran子例程中的数组(netbeans和代码块)?,debugging,netbeans,gdb,fortran,codeblocks,Debugging,Netbeans,Gdb,Fortran,Codeblocks,我将gfortran与代码::Blocks 13.12和NetBeans 8.0一起使用。 两者都在使用GDB调试器。代码块使用MinGW,netbeans使用Cygwin。在这两种情况下,我都有最新的稳定编译器、调试器和make 但如果在子例程中定义了数组,则它们都不能在调试模式下显示数组值。分配的数组也存在同样的问题。 代码::Blocks要么显示一些带有3个值的废话,比如(1.456544984984654984e-314),要么显示没有任何值的()。 转到属性并设置开始/计数根本没有帮助

我将gfortran与代码::Blocks 13.12和NetBeans 8.0一起使用。 两者都在使用GDB调试器。代码块使用MinGW,netbeans使用Cygwin。在这两种情况下,我都有最新的稳定编译器、调试器和make

但如果在子例程中定义了数组,则它们都不能在调试模式下显示数组值。分配的数组也存在同样的问题。 代码::Blocks要么显示一些带有3个值的废话,比如(1.456544984984654984e-314),要么显示没有任何值的()。 转到属性并设置开始/计数根本没有帮助

在NetBeans中,所有数组都始终显示为{…},并且没有任何更改

有人有这方面的经验吗?
由于我几乎所有的数据都在数组中,因此调试器对于我来说没有任何用处。

请说明数组是如何声明的,在您试图打印值的程序的哪个位置结束。许多人都遇到了问题,例如您在使用gdb和Fortran代码时报告的问题。我认为其中一个问题是gdb的作者在工作时想到了C风格的数组。最近这里有一个问题()解释了两种语言处理数组的不同之处。关于使用gdb检查Fortran数组的困难,在这里和互联网上的其他地方都有大量的讨论。这里是(从代码块)[link]绿色1D数组压力是可以的,它的大小(3)从一开始就知道了。其他2个阵列(红色)的物质大小为No_,在这种情况下为=5。因此,在程序窗口中,它们的实际值会显示出来。在观察列表中,显示了完全的胡说八道。物质=[34,4,23,24,55]和x=[0.186,0.113…]我还可以举一个例子,其中,除了无意义外,只保留空括号()。