受け取った配列への書き込み

明解C言語 入門編 > 6. 関数 >

受け取った配列への書き込み

Delphi


program Project1;

{$APPTYPE CONSOLE}

uses
SysUtils;

procedure int_set1(vc:array of Integer; no: Integer);
var
i: Integer;
begin
for i := Low(vc) to High(vc) do
vc[i] := i;

no := 0;
end;

procedure int_set2(var vc:array of Integer; var no: Integer);
var
i: Integer;
begin
for i := Low(vc) to High(vc) do
vc[i] := i;

no := 0;
end;

const
NINSU = 5;
var
i: Integer = NINSU;
j: Integer;
ary: array[1..NINSU] of Integer = (0, 0, 0, 0, 0);
begin
writeln('関数 呼び出し前');
writeln(format(' i = %d', [i]));
for j := 1 to NINSU do
writeln(format('ary[%d] = %d', [j, ary[j]]));

int_set1(ary, i);

writeln('関数 呼び出し後 1');
writeln(format(' i = %d', [i]));
for j := 1 to NINSU do
writeln(format('ary[%d] = %d', [j, ary[j]]));

int_set2(ary, i);

writeln('関数 呼び出し後 2');
writeln(format(' i = %d', [i]));
for j := 1 to NINSU do
writeln(format('ary[%d] = %d', [j, ary[j]]));
end.

実行結果

S:\>lesson048\project1.exe
関数 呼び出し前
i = 5
ary[1] = 0
ary[2] = 0
ary[3] = 0
ary[4] = 0
ary[5] = 0
関数 呼び出し後 1
i = 5
ary[1] = 0
ary[2] = 0
ary[3] = 0
ary[4] = 0
ary[5] = 0
関数 呼び出し後 2
i = 0
ary[1] = 1
ary[2] = 2
ary[3] = 3
ary[4] = 4
ary[5] = 5