如果使用 -C 编译,编辑器在运行时会增加对每个数组下标上的跨界引用以及数组一致性的检查。此操作有助于捕获某些会引起段故障的情况。
示例:超出范围的索引:
demo% cat range.f
REAL a(10,10)
k = 11
a(k,2) = 1.0
END
demo% f95 -o range range.f
demo% range
****** FORTRAN RUN-TIME SYSTEM ******
Subscript out of range. Location: line 3 column 9 of ’range.f’
Subscript number 1 has value 11 in array ’A’
Abort
demo%
|