对该文发表评论已有5条评论,点击全部查看
我的态度:

    登录 | 注册 需要登陆才可发布评论
最新 最热
2016-03-11 23:02:32 JoeLovesFortran(JoeLovesFortran)
如何读取三个字节长度的整型?或者如何定义一个3字节长度的整型? 我看其它语言(IDL语言,interactive data language)是通过先读取4个字节长度的整型,然后通过与16进制整数‘FFFFFF\'按位和(IAND)来得到的。我倒是按照IDL语言,用Fortran使用位操作内置函数IAND做了,但是没有得到正确的整型数据结果。
回复 支持2
2014-11-30 00:15:21 vvt(vvt)
taotao0718 于 2014-11-29 20:22:44发布
请问,用stream读数,什么情况下需要先跳过几个字节,防止读出来的数据是错位的呢
除非数据里有4字节空白或你不需要的字节,否则无需跳过。
回复 支持1
2022-04-25 14:26:40 sunchengbo2007(sunchengbo2007)
上面代码,type版,在win10-x64用gfortran-11.2.0编译,出错: gfortran -Wall -o \"streamfile2\" \"streamfile2.f90\" streamfile2.f90:5:28: 5 | character(len=4) :: flag | 1 Warning: Component \'flag\' in derived type \'grad_head\' at (1) may not be C interoperable, even though derived type \'grad_head\' is BIND(C) [-Wc-binding-type] streamfile2.f90:5:28: 5 | character(len=4) :: flag ! | 1 Error: Component \'flag\' of BIND(C) type at (1) must have length one 编译失败。 作如下修改: --- character(len=4) :: flag +++ character(kind=c_char) :: flag(1:4) 再编译,通过。
回复 支持0
2016-03-14 08:47:02 vvt(vvt)
JoeLovesFortran 于 2016-03-11 23:02:32发布
如何读取三个字节长度的整型?或者如何定义一个3字节长度的整型?
我看其它语言(IDL语言,interactive data language)是通过先读取4个字节长度的整型,然后通过与16进制整数‘FFFFFF\'按位和(IAND)来得到的。我倒是按照IDL语言,用Fortran使用位操作内置函数IAND做了,但是没有得到正确的整型数据结果。
character(len=3) 就是3字节长度的。然后通过 transfer 转换。近几天我会写一个教程出来。
回复 支持0
2014-11-29 20:22:44 taotao0718(taotao0718)
请问,用stream读数,什么情况下需要先跳过几个字节,防止读出来的数据是错位的呢
回复 支持0