求教过程无法实现是过程有关问题还是调用有关问题
求教过程无法实现是过程问题还是调用问题
procedure TForm1.switch(a,b:integer);
var
m:integer;
begin
if a<b then
begin
m:=a;
a:=b;
b:=m;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
j,k:integer;
begin
j:=StrToInt(Edit1.Text);
k:=StrToInt(Edit2.Text);
switch(j,k);
Edit1.Text:=IntToStr(j);
Edit2.Text:=IntToStr(k);
end;
end.
[Hint] Unit1.pas(39): Value assigned to 'b' never used
[Hint] Unit1.pas(39): Value assigned to 'a' never used
[Hint] Unit1.pas(39): Value assigned to 'm' never used
程序运行结果无法实现j与k的值交换 提示 a,b,m没有被使用到
请教出在哪儿
------解决方案--------------------
procedure TForm1.switch(a,b:integer);
改成
procedure TForm1.switch(var a,b:integer);
传值 和 传指针 的区别,可以百度google一下
------解决方案--------------------
switch(var a:integer;var b:integer)
procedure TForm1.switch(a,b:integer);
var
m:integer;
begin
if a<b then
begin
m:=a;
a:=b;
b:=m;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
j,k:integer;
begin
j:=StrToInt(Edit1.Text);
k:=StrToInt(Edit2.Text);
switch(j,k);
Edit1.Text:=IntToStr(j);
Edit2.Text:=IntToStr(k);
end;
end.
[Hint] Unit1.pas(39): Value assigned to 'b' never used
[Hint] Unit1.pas(39): Value assigned to 'a' never used
[Hint] Unit1.pas(39): Value assigned to 'm' never used
程序运行结果无法实现j与k的值交换 提示 a,b,m没有被使用到
请教出在哪儿
------解决方案--------------------
procedure TForm1.switch(a,b:integer);
改成
procedure TForm1.switch(var a,b:integer);
传值 和 传指针 的区别,可以百度google一下
------解决方案--------------------
switch(var a:integer;var b:integer)