楼上说得没错,有条件的话,使用一些更标准的格式会更好。或者自己规定一些比较简单鲜明的格式,对自己,对他人,都有好处 |
请输出成标准的矩阵存储格式,譬如 Matrix Market Exchange Formats Harwell-Boeing Exchange Format |
山大克鲁士 发表于 2014-5-8 22:50 加论坛对应的fortran群: 2338021 |
再次膜拜大神,学生的接口函数全弄好了,多亏了大神才能让学生实现Matlab、C、Fortran的数据文件无缝衔接~~~ 大神方便留个qq吗?当然学生绝不会经常打扰的~~~ 学生的qq是45152364~ |
77 和 90 没有太严格的界限。就像 C99 和 C89 一样。 但是 77 不允许用 allocatable 的数组,呵呵。现在建议不要特意学习 77 了 |
首先拜谢大神,我马上将您的代码弄进去试试~~~ P.S: 我也弄不清是77还是90,因为在下是C coder过来的,所以很多时候对fortran的东东还很迷糊。。。 |
首先,你的代码不是 Fortran77 的,至少是 Fortran90 的 其次,你这个格式确实不好读,需要绕一些弯。 [Fortran] 纯文本查看 复制代码 !======================================== ! Open file in ANSI mode open(UNIT = fid, FILE = strFileName, & ACCESS = 'SEQUENTIAL', ACTION = 'READ', & FORM = 'FORMATTED', STATUS = 'OLD') ! This is a m X n complex matrix as: read(fid, *) strBuf, strBuf, strBuf, & m, strBuf, n, strBuf, strBuf, strBuf ! Memory allocation for A allocate(A(m,n), STAT = ierr) ! Out of memory if (ierr .ne. 0) then close(fid, STATUS = 'KEEP') print *, 'Out of memory!' ReadZMatrixFromFile32 = .false. return end if ! Read matrix from file in row-major format ! 下一行肯定是错的,但我真心不知道咋整了。。。 read(fid, *) ((A(i,j), j=1,n), i=1,m) ! Close file close(fid, STATUS = 'KEEP') !====================================== |
捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )
GMT+8, 2024-12-23 05:44