forrtl:严重(157):程序异常 - 访问冲突

时间:2012-11-15 03:46:16

标签: fortran

我正在使用“thrgibbs1f90b”BLUPF90系列程序之一,它基于“fortran”并用于gibbs采样来估计二进制数据的方差分量。每次我尝试运行thrgibbs1f90b时,都会收到以下错误消息:

forrtl:severe(157):程序异常 - 访问冲突

Image               PC                Routine            Line        Source

thrgibbs1f90b.exe    0000000140021961    Unknown    Unknown    Unknown
thrgibbs1f90b.exe    000000014000BB5B    Unknown    Unknown    Unknown
thrgibbs1f90b.exe    000000014026B41C    Unknown    Unknown    Unknown
thrgibbs1f90b.exe    000000014024F4E3    Unknown    Unknown    Unknown
kernel32.dll         0000000076E2652D    Unknown    Unknown    Unknown
ntdll.dll            0000000076F5C521    Unknown    Unknown    Unknown

知道为什么我有这个消息?

谢谢!

1 个答案:

答案 0 :(得分:3)

两个有根据的猜测

  1. 程序试图读取或写入不存在的数组元素,例如25元素数组的第26个元素。
  2. 为过程指定的伪参数与对过程的调用中的实际参数之间存在不匹配;例如,当预期8字节值时传递4字节实数值(或反之亦然
  3. 这些中的任何一个都可能导致尝试访问程序进程无权访问的内存位置。还有许多其他可能的原因,但根据我的经验,这些是Fortran程序中最常见的错误,会产生此类错误消息。

    这两个都很容易被发现,您需要(重新)编译您的程序,并设置编译器选项以检查这些条件