如何设置json-fortran库的实数输出格式?
解决json-fortran库中实数输出格式配置问题
直接在初始化json_core对象时传入完整的格式字符串即可,无需修改库源码:
type(json_core) :: core call core%initialize(real_format='G0.6')
为什么之前的尝试无效?
- 修改
json_parameters.f90第76行的默认格式参数没用:因为当你在代码中调用core%initialize指定real_format时,会覆盖模块里的默认参数值,源码修改被你的初始化调用覆盖了。 - 修改
real_precision参数完全搞错了方向:这个参数是控制库内部实数变量的存储精度,不是输出格式,改它必然会引发null、NaN这类特殊值的处理异常。
用上述方法配置后,输入3.1这类实数,输出会符合G0.6的格式要求,不会再出现3.0999999046325684这类冗余的浮点精度串。
内容的提问来源于stack exchange,提问作者SAL
相关产品推荐
相关产品推荐

