Fortran Coder

查看: 80|回复: 5

[文件读写] simply fortran数据写入出界,dat文件生成

[复制链接]

4

帖子

1

主题

0

精华

新人

F 币
19 元
贡献
8 点
发表于 2019-7-27 15:32:36 | 显示全部楼层 |阅读模式
程序如下图。用Visual Fortran是可以运行生成dat的,但无改动代码使用SIMPLY FORTRAN就出错了。麻烦大佬帮个忙,谢谢!




3.png
回复

使用道具 举报

4

帖子

1

主题

0

精华

新人

F 币
19 元
贡献
8 点
 楼主| 发表于 2019-7-27 16:43:50 | 显示全部楼层
本帖最后由 qqaazz 于 2019-7-27 16:46 编辑

附上整个程序
7.png

699

帖子

0

主题

0

精华

大师

F 币
698 元
贡献
389 点

规矩勋章元老勋章新人勋章水王勋章

QQ
发表于 2019-7-27 19:08:34 | 显示全部楼层
本帖最后由 vvt 于 2019-7-27 19:10 编辑

都不能吧。
你的 recl = 1
但是写入一次3个数据(12字节),不出错才怪呢。
在我的ivf上,会出现
output statement overflows record
这个错误。

4

帖子

1

主题

0

精华

新人

F 币
19 元
贡献
8 点
 楼主| 发表于 2019-7-28 09:26:16 | 显示全部楼层
vvt 发表于 2019-7-27 19:08
都不能吧。
你的 recl = 1
但是写入一次3个数据(12字节),不出错才怪呢。

好的,谢谢!
因为书上说一般为1或4,加上不是很懂字节的问题,所以试到10就没继续了

699

帖子

0

主题

0

精华

大师

F 币
698 元
贡献
389 点

规矩勋章元老勋章新人勋章水王勋章

QQ
发表于 2019-7-28 15:47:10 | 显示全部楼层
1 或者4,是针对你一次输入一个数据而言的。
你现在一个输出3个数据,当然要变了。

有的编译器用1,代表1个32位(dword)。有的用4,代表32位(4字节)

4

帖子

1

主题

0

精华

新人

F 币
19 元
贡献
8 点
 楼主| 发表于 2019-7-28 20:42:12 | 显示全部楼层
vvt 发表于 2019-7-28 15:47
1 或者4,是针对你一次输入一个数据而言的。
你现在一个输出3个数据,当然要变了。

好的!谢谢!!
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

QQ|捐赠本站|Archiver|关于我们 About Us|群聊|Fcode

GMT+8, 2019-8-22 00:23

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

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