fortran95的使用方法
其中的默认字符表达式(default-char-expr)表示一个有效的格式说明。该表达式也可以是一个特殊的字符常量,注意参考第7章里面对于表达式的说明。如果该表达式是一个数组的形式,那么可以把该数组看成是所有的数组元素按照数组元素序串联起来。
如果格式表示是其中的星号*,那么该语句就是所谓的表控输入输出语句。
【例16-6】
READ (6, FMT = "(" // CHAR_FMT // ")" ) X, Y, Z
在这个例子里面格式为字符表达式,其中CHAR_FMT为一个默认字符变量。
2. 名称列表说明符NML=
说明符NML=给出名称列表集合名称。该名称表示了一个需要进行数据传输操作的数据对象的集合。
如果语句当中给出了这个名称列表集合名称,那么该语句就是所谓名称列表输入输出语句。
3. 纪录数说明符REC=
纪录数说明符The REC=给出需要读写的纪录的数目。
该说明符只能用于针对直接访问联结部件的输入输出语句,因此这个说明符可以说是一个标志性的东西,即只要控制信息列表里面包含了REC=说明符,那么该语句就是所谓直接访问输入输出语句,否则就是所谓序列访问输入输出语句。
4. 输入输出状态说明符IOSTAT=
执行一个包含了IOSTAT=说明符的输入输出语句实际上也就是定义了在IOSTAT=说明符里面给出的变量。
该变量的取值情况有如下几种:
● 如果语句执行过程当中没有出现错误条件,也没有出现文件终止条件和纪录终止条件,那么变量取值为0。
● 如果出现错误条件,那么取值为系统约定的正整数值。
● 如果出现文件终止条件,而没有出现错误条件,那么取值为系统约定的负整数值。 ● 如果出现纪录终止条件,而没有出现错误条件与文件终止条件,那么取值为系统约定的不同于文件终止条件下的取值的负整数值。
只有在执行序列输入语句时才会出现文件终止条件,而只有在执行非预输入语句时才会出现纪录终止条件,参见下面的例子。
【例16-7】
READ (FMT = "(E8.3)", UNIT = 3, IOSTAT = IOSS) X
IF (IOSS < 0) THEN
! 对联结到部件3的文件进行文件终止操作.
CALL END_PROCESSING
ELSE IF (IOSS > 0) THEN
! 进行出错处理
CALL ERROR_PROCESSING
END IF