注册 登录
编程论坛 Delphi论坛

Delphi中有没有移动指针的语句?

bccnwshmm 发布于 2016-03-07 20:53, 6743 次点击
在C语言中有移动指针的语句,不知在Delphi中有没有相应功能的语句,如果有的话,如何使用?最好举一个实例,谢谢!
2 回复
#2
mooii2016-03-07 21:31
回复 楼主 bccnwshmm
程序代码:

var
  pint: ^Integer;

inc(pint);


你要的是这效果么?

[此贴子已经被作者于2016-3-7 21:36编辑过]

#3
bccnwshmm2016-03-09 16:43
回复 2楼 mooii
语句经过编译成功,谢谢回复!
这个文件读写的指针吗?
下面是文件复制的程序,如果要在这个程序中使用上面的语句来移动指针,只复制文件的一部分内容,怎么写呢?

procedure TForm1.Button1Click(Sender: TObject);
var
 FromF, ToF: file;
 NumRead, NumWritten: Integer;
 Buf: array[1..2048] of Char;
begin
   if OpenDialog1.Execute then begin
   AssignFile(FromF, OpenDialog1.FileName);
   Reset(FromF, 1); { Record size = 1 }
   if SaveDialog1.Execute then { Display Save dialog box}
   begin
     AssignFile(ToF, SaveDialog1.FileName); { Open output file }
     Rewrite(ToF, 1); { Record size = 1 }
     Canvas.TextOut(10, 10, 'Copying ' + IntToStr(FileSize(FromF))
+ ' bytes...');
     repeat
       BlockRead(FromF, Buf, SizeOf(Buf), NumRead);

       BlockWrite(ToF, Buf, NumRead, NumWritten);
    until (NumRead = 0) or (NumWritten <> NumRead);
    CloseFile(FromF);
    CloseFile(ToF);
  end;
end;
end;

[此贴子已经被作者于2016-3-9 16:50编辑过]

1