box*_*lk1 5 fortran gfortran intel-fortran
我经常看到人们使用该OPEN语句而不明确指定STATUS. 在 Fortran 90 和 2008 标准中,这样说STATUS:
如果指定 UNKNOWN,则状态取决于处理器。如果省略此说明符,则默认值为 UNKNOWN。
我将此解释为,如果STATUS省略,任何事情都可能发生,具体取决于您使用的机器。
然而,从进行一些测试来看,默认行为(当STATUS省略时)似乎是REPLACE. 但我找不到 gfortran 编译器手册(来自https://gcc.gnu.org/onlinedocs/)中记录的这种行为。
问题:这REPLACE确实是 gfortran 和 ifort 等流行编译器的默认行为吗?如果是这样,这实际上有记录吗(但我只是碰巧没有找到它)?
在常见的编译器中,UNKNOWN所有编译器的行为都非常相似。但绝对不等于REPLACE!该选择将覆盖您想要读取的数据!
IBM XL Fortran 手册指定了这一点:
未知,连接现有文件,或创建并连接新文件。如果文件存在,则将其作为 OLD 连接。如果该文件不存在,则将其作为新文件连接。
| 归档时间: |
|
| 查看次数: |
2903 次 |
| 最近记录: |