私はのレコード構造を持っています
Tperson = record
// setting/declaring the record
firstname: string[30];
surname: string[30];
form: string[5];
catscore: real;
predictedgrade: string[2];
giftedandtalented: string[255];
learningdifficulties: string[255];
behaviouraldifficulties: string[255];
そして、次のコードを使用して配列として読み取りました
procedure TForm1.Button1Click(Sender: TObject);
var
studentarray:array of Tperson;
studentarraycopy:array of tperson;
i,j,c : integer;
begin
i:=0;
reset(personFile);
while not EOF(personfile) do
begin
i:=i+1;
read(personfile, studentArray[i]);
このレコードの配列を並べ替えてから、このコードを使用して高、低、高、低の順に並べ替えます。
procedure SerratedSort(var A: array of TPerson);
var
s: Integer;
i: Integer;
t: TPerson;
begin
s := Length(A);
i := 0;
while i < s do begin
t := A[s - 1];
System.Move(A[i], A[i + 1], (s - i + 1) * SizeOf(TPerson));
A[i] := t;
i := i + 2;
end;
end;
この並べ替えの結果は、文字列グリッドを埋めるために使用される配列のコピーになりますが、レコードの配列を使用して文字列グリッドを埋めるにはどうすればよいですか?