我试图做一个简单的过程,从输入的字符串中删除空格:
procedure RemoveSpaces(StringParameter : String);
var
SpacePosition: Integer;
begin
SpacePosition := Pos(' ',StringParameter);
while SpacePos <> 0 do
begin
Delete(StringParameter,SpacePos,1);
SpacePosition := Pos(' ',StringParameter);
end;
end;
Run Code Online (Sandbox Code Playgroud)
但在测试以下代码中的过程之后:
var
Input : String;
begin
Readln(Input);
RemoveSpaces(Input);
Writeln(Input);
Readln;
end.
Run Code Online (Sandbox Code Playgroud)
很明显,输入变量只是从程序中反过来,好像它从未改变过一样.
我认为这可能仅限于我可以用我尚未实现的程序做什么但后来我记得我之前已经创建了一个带有StringList参数的过程,并按字母顺序对StringList中的字符串进行排序并保存更改到StringList变量参数:
var
myStringList : TStringList;
implementation
procedure StringListSort(StringList : TStringList);
begin
//Sort StringList
end;
procedure TFormName.ButtonNameClick(Sender: TObject);
begin
StringListSort(myStringList);
end;
Run Code Online (Sandbox Code Playgroud)
欢迎解决我的问题.