Enabling CTRL+C and CTRL+BREAK by Using PeekcharQQ
ID: Q123687
|
The information in this article applies to:
-
Microsoft FORTRAN PowerStation for MS-DOS, versions 1.0, 1.0a
SUMMARY
To break out of a long running program, it is customary to use CTRL+C or
CTRL+BREAK. However, MS-DOS only checks for CTRL+C or CTRL+BREAK when
processing keyboard input. If there is no keyboard input in a loop (it
contains only calculations), the program is likely to ignore CTRL+C and
CTRL+BREAK.
The PeekcharQQ() function performs keyboard input processing and should not
significantly slow down your program, if used cautiously.
MORE INFORMATION
When you call PeekcharQQ() in a long loop, MS-DOS checks the keyboard for
input. If CTRL+C or CTRK+BREAK was pressed, the program terminates.
In the sample code in this article, PeekcharQQ() is called thousands of
times a second. In an actual application, this would noticeably slow the
program. It is usually sufficient to place calls to PeekcharQQ() so that it
is called at most a few times a second.
NOTE: Sometimes the following simple code will break on a CTRL+C even
without the call to PeekcharQQ(). However, more complex code will require
adding calls to PeekcharQQ() to allow CTRL+C or CTRL+BREAK processing.
Sample Code
C Compile Options needed: none
include'flib.fi'
include'flib.fd'
logical l
do i=1,1000000
x = sqrt(i)
l = peekcharqq()
end do
end
Additional query words:
kbinf nofpsnt 1.00 1.00a
Keywords :
Version : :1.0,1.0a
Platform :
Issue type :