问:blockread的用法(50分)

  • 主题发起人 主题发起人 zcfmichael
  • 开始时间 开始时间
Z

zcfmichael

Unregistered / Unconfirmed
GUEST, unregistred user!
请问:blockread的用法
我在用blockread读取file of byte类型文件时,写了如下语句:
seek(fp,10);
blockread(fp,bmp_len,sizeof(bmp_len)); (1)
.......
seek(fp,28);
blockread(fp,tag,sizeof(tag)); (2)
其中bmp_len为cardinal,tag为word型
编译时(1)句通过,而(2)却出现constant object cannot be passed as parameter的错误.
小生实在不知(1)与(2)有何区别,盼诸位高手赐教.
小生地址为:zcfmichael@263.net
 
tag是个常量(至少在包含这句的过程中不能改变),我想应该是这中情况
你的tag是怎么声明的?
 
同意Kang,
函数定义的时候就说明了
BlockRead(var F: File; var Buf; Count: Integer [; var AmtTransferred: Integer]);
因为读取的结果,即读的多少要反映在Buf中.
注意Buf是一个变参,而非值参.
 
多人接受答案了。
 
后退
顶部