2つの値を交換する
明解C言語 入門編 > 10. ポインタ >
2つの値を交換する
Delphi
program Project1;{$APPTYPE CONSOLE}
uses
SysUtils;procedure swap1(nx:Integer; ny:Integer);
var
tmp: Integer;
begin
tmp := nx;
nx := ny;
ny := tmp;
end;procedure swap2(var nx:Integer; var ny:Integer);
var
tmp: Integer;
begin
tmp := nx;
nx := ny;
ny := tmp;
end;procedure swap3(nx:PInteger; ny:PInteger);
var
tmp: Integer;
begin
tmp := nx^;
nx^ := ny^;
ny^ := tmp;
end;procedure main();
var
na, nb: Integer;
begin
na := 57;
nb := 21;Writeln(Format('整数A:%d', [na]));
Writeln(Format('整数B:%d', [nb]));
Writeln('');swap1(na, nb);
Writeln(Format('整数A:%d', [na]));
Writeln(Format('整数B:%d', [nb]));
Writeln('');na := 57;
nb := 21;
swap2(na, nb);Writeln(Format('整数A:%d', [na]));
Writeln(Format('整数B:%d', [nb]));
Writeln('');na := 57;
nb := 21;
swap3(@na, @nb);Writeln(Format('整数A:%d', [na]));
Writeln(Format('整数B:%d', [nb]));
Writeln('');
end;begin
main;
end.
実行結果
S:\>lesson077\Project1.exe
整数A:57
整数B:21整数A:57
整数B:21整数A:21
整数B:57整数A:21
整数B:57