24小时热门版块排行榜    

查看: 824  |  回复: 28
本帖产生 1 个 程序强帖 ,点击这里进行查看

贺仪

铁杆木虫 (著名写手)

引用回帖:
Originally posted by snoopyzhao at 2011-04-27 10:41:03:
我一般都是这样的:

gfortran -Wall wavercar.f90 -o wavercar.exe

恩 我编译好了 但是运行是出这样的错
At line 15 of file wavercar.f90
Fortran runtime error: Format present for UNFORMATTED data transfer
下面是完整的程序
你帮我看一下哪里有问题好吗?谢谢咯
嘟啦啦嘟啦啦嘟
21楼2011-04-27 10:45:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
Originally posted by 贺仪 at 2011-04-27 10:45:50:
恩 我编译好了 但是运行是出这样的错
At line 15 of file wavercar.f90
Fortran runtime error: Format present for UNFORMATTED data transfer
下面是完整的程序
你帮我看一下哪里有问题好吗?谢谢咯

输入数据文件也传上来吧。
22楼2011-04-27 11:02:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

贺仪

铁杆木虫 (著名写手)

引用回帖:
Originally posted by snoopyzhao at 2011-04-27 11:02:31:
输入数据文件也传上来吧。

好的,上传了 麻烦你了!
嘟啦啦嘟啦啦嘟
23楼2011-04-27 11:39:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

贺仪

铁杆木虫 (著名写手)

里面有几个变量没定义, nbandmin.and.iband.le.nbandmax 你随便改一下
嘟啦啦嘟啦啦嘟
24楼2011-04-27 11:44:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

余泽成(程序强帖+1): 2011-04-27 22:28:22
引用回帖:
Originally posted by 贺仪 at 2011-04-27 11:44:03:
里面有几个变量没定义, nbandmin.and.iband.le.nbandmax 你随便改一下

哦,才注意到你的输入文件是一个二进制文件……,在这种情况下,你的 read 函数中就不能有那个表示 fmt 的 *,直接 read(12).... 就可以了

不过,对于这种情况,你一定要知道二进制文件是如何写入的,这样才有可能读出来。

下面是一个示例,你自己看一下:
CODE:
program example
   real :: a,a1,b,b1,c(4),c1(4)
   integer :: n,n1,m,m1
   n=6
   m=8
   a=1.1
   b=2.2
   c(1)=3.3
   c(2)=4.4
   c(3)=5.5
   c(4)=6.6
   open(1,file='test',form='unformatted')
   write(1)a,b,n
   write(1)c,m
   close(1)
   open(1,file='test',form='unformatted', status = 'old')
   read(1) a1,b1,n1
   read(1) c1, m1
   write(*,*) a1, b1, n1, c1, m1
   close(1)
end

25楼2011-04-27 14:50:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

贺仪

铁杆木虫 (著名写手)

引用回帖:
Originally posted by snoopyzhao at 2011-04-27 14:50:50:
哦,才注意到你的输入文件是一个二进制文件……,在这种情况下,你的 read 函数中就不能有那个表示 fmt 的 *,直接 read(12).... 就可以了

不过,对于这种情况,你一定要知道二进制文件是如何写入的,这样才 ...

明白了我再试试  谢谢!
嘟啦啦嘟啦啦嘟
26楼2011-04-27 19:53:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

贺仪

铁杆木虫 (著名写手)

引用回帖:
Originally posted by snoopyzhao at 2011-04-27 14:50:50:
哦,才注意到你的输入文件是一个二进制文件……,在这种情况下,你的 read 函数中就不能有那个表示 fmt 的 *,直接 read(12).... 就可以了

不过,对于这种情况,你一定要知道二进制文件是如何写入的,这样才 ...

要是不知道二进制文件是如何写入的可不可以读取出来?
嘟啦啦嘟啦啦嘟
27楼2011-04-27 22:53:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
Originally posted by 贺仪 at 2011-04-27 22:53:39:
要是不知道二进制文件是如何写入的可不可以读取出来?

这个一般很困难,相当于进行确解数据格式了……

所以,最好还是找一下那个文件是如何写入的……
28楼2011-04-27 23:05:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

贺仪

铁杆木虫 (著名写手)

引用回帖:
Originally posted by snoopyzhao at 2011-04-27 23:05:02:
这个一般很困难,相当于进行确解数据格式了……

所以,最好还是找一下那个文件是如何写入的……

我通过matlab读入赋值到一个变量里面,然后再把这个变量输出带一个文件,结果是一排排的数字,有规律但是不知道那是什么规律
嘟啦啦嘟啦啦嘟
29楼2011-04-28 09:54:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 贺仪 的主题更新
信息提示
请填处理意见