|
请教诸位大侠十万火急)
我将UNIX下的fortran77程序移植到RH8.0下,其中源程序中是这样使用signal函数的:
subroutine enablc
external ctrlco
integer signum,flag
integer signal
signum=2
flag =-1
inum =signal(signum,ctrlco,flag)
return
end
在程序中用三个参数,
第一个signum=2代表SIGINT,这里是指键盘操作"ctrl c",
第二个参数是信号发生时调用的子程序,
不知道第三个参数flag=-1有什么功能?
但是该段程序在linux下编译不通过,
enablc.f: In subroutine `enablc':
enablc.f:7:
inum =signal(signum,ctrlco,flag)
^
Too many arguments passed to intrinsic `SIGNAL' at (^)
报错:有多余的参数.
我将flag删掉调后,程序虽然编译通过,但是执行后,就没预想的结果了.
请教诸位大侠:我该怎么修改该程序? |
|