有效列表项 (Fortran 2003)
本部分讨论了扩展数据传输语句的数组和派生类型输入/输出列表项的规则。 应用这些规则所产生的标量对象称为有效项。 零大小的数组和隐式-迭代计数为零的DO 列表不会对有效列表项产生任何作用。 长度为零的标量字符项是有效列表项。
以下规则将重新应用于每个展开的列表项,直到没有任何规则适用为止。
- 如果数组显示为输入/输出列表项,那么会将其视为按数组元素顺序指定的元素 (如果有)。
- 如果未格式化的输入/输出语句中派生类型的列表项未由用户定义的派生类型输入/输出过程处理,并且如果该列表项的任何子对象将由用户定义的派生类型输入/输出过程处理,那么会将该列表项视为对象的所有组件都按组件顺序在列表中指定。 这些组件可在包含输入/输出语句的作用域限定单元中访问,并且不能是指针或可分配的组件。
- 除非列表项或列表项的子对象由用户定义的派生类型输入/输出过程处理,否则未格式化的输入/输出语句中派生类型的有效输入/输出列表项被视为处理器依赖形式中的单个值。
- 如果用户定义的派生类型输入/输出过程未处理 格式化 输入/输出语句中派生类型的列表项,那么会将该列表项视为在列表中按组件顺序指定了该列表项的所有组件。 这些组件可在包含输入/输出语句的作用域限定单元中访问,并且不能是指针或可分配的组件。
- 如果派生类型列表项未被视为其各个组件的列表,那么其最终组件不能具有 POINTER 或 ALLOCATABLE 属性,除非该列表项由用户定义的派生类型输入/输出过程处理。