回 帖 发 新 帖 刷新版面

主题:我编写的一个简单COPY程序,大家帮看看哪不对?!

program test (input,output);

type

  student = record

     num:integer;

     name:srting;

     age:15..30;

     sex:(male,female);

     score:real;

  end;

  workfile = file of student;

  var

    sfile,rfile,newfile:workfile;

    stud:student;  i:integer;

  begin

      assign (sfile,'sfile.dat');  assign (newfile,'newfile.dat');

      reset (sfile);   rewrite (newfile);

      while not eof (sfile) do

          begin

              read (sfile,stud);

              write (newfile,stud)

           end;

  end.

编译没有错误,但运行的时候显示:error 100 : disk read error.

这是怎么回事啊?我调试好几个程序了,都是这样,还请大家帮忙看看!

回复列表 (共9个回复)

沙发

[em7]你的每個loading file....是不是設錯東西/? 而不能識別

板凳

程序出现低级错误!"name:srting;"应改为"name:string;"

3 楼

应该不只是这个问题~!

4 楼

可能是你的俩个进行关联的文件变量跟关联的文件重名了把,改一下,试试。[em12]

5 楼

[em1][em1]高手,都是高手[em19]

6 楼

可以直接读/写的数据类型好像只有实型、整形和字符(串)型和它们的子集,sex一栏内是枚举类型,不可以直接读/写。

7 楼

是不是考虑一下块读和块写(BlockRead和BlockWrite)?

8 楼

哎,告诉你个省力的方法,拷贝个程序而已嘛,用Dos命令就好了
程序首部加
{$M 8192,0,0}

program下面加
uses Dos;
程序中调用如下命令
Exec(GetEnv('COMSPEC'), '/C ' + Command);
Command为Dos命令
要Copy文件就小菜了,还可以执行很多别的命令呢^_^

9 楼

程序首部加
{$M 8192,0,0}
是什么意思~~~???

我来回复

您尚未登录,请登录后再回复。点此登录或注册