Fortran Coder

查看: 9345|回复: 2
打印 上一主题 下一主题

[输入输出] namelist从文件输入如何在输入项不足时返回信息或报错

[复制链接]

2

帖子

1

主题

0

精华

入门

F 币
47 元
贡献
21 点
跳转到指定楼层
楼主
发表于 2021-7-22 14:04:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我目前开发的程序,想使用namelist从文本文件读取输入。调试过程中发现输入中缺少namelist中的某些变量时,程序依然可以继续运行,未输入的变量保持默认值。查看namelist文档后,发现确实是这样设计的,“It is not necessary for the input records in a namelist input statement to define every variable in the associated namelist.”“The number of values following the equal sign must be equal to or less than the number of list items in the expanded sequence.”
但这样的话程序使用者如果误删输入,程序不会直接报错,可能引起后续计算错误。
那么有没有什么方式能卡死在文件里必须输入完namelist所有变量呢,在不输入完整时返回某些信息或者直接报错。
感谢!

分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

213

帖子

2

主题

0

精华

宗师

F 币
2131 元
贡献
875 点

规矩勋章

沙发
发表于 2021-7-22 19:46:45 | 只看该作者
使用namelist无法避免所说的问题,只能采用list-directed I/O, 一个变量对应一个数值。

2

帖子

1

主题

0

精华

入门

F 币
47 元
贡献
21 点
板凳
 楼主| 发表于 2021-7-24 10:47:52 | 只看该作者
风平老涡 发表于 2021-7-22 19:46
使用namelist无法避免所说的问题,只能采用list-directed I/O, 一个变量对应一个数值。 ...

感谢回答!
那还是保留namelist,在输入手册里着重提示吧。用这个输入比较明了,有点弱化版xml的感觉
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-11-23 11:03

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表