我在 Fortran 中编写了这个非常简单的代码:
program su
  implicit none
  real ran3
  write(*,*) ran3(0)
end program su
real*8 function ran3(iseed)
  implicit none
  integer iseed
  iseed=iseed*153941+1
  ran3=float(iseed)*2.328+0.5     
end function ran3
我在编译它时没有问题,但是当我执行代码时,我收到了这条消息:
Program received signal SIGSEGV: Segmentation fault - invalid memory reference.
Backtrace for this error:
#0  0xB76BAC8B
#1  0xB76BB2DC
#2  0xB77BA3FF
#3  0x8048653 in ran3_
#4  0x80486B3 in MAIN__ at der.f90:?
Segmentation fault (core dumped)
你能告诉我为什么,我该如何解决?