错在哪里呢(20分)

  • 主题发起人 主题发起人 wuqvei2002
  • 开始时间 开始时间
W

wuqvei2002

Unregistered / Unconfirmed
GUEST, unregistred user!
我编了一段将中文逗号转化为英文逗号的代码,但点button时就死了,代码如下:
procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
position:integer;
begin
s:=edit1.Text;
position:=pos(',',s);
while position<>0 do
begin

delete(s,position,2);
insert(',',s,position);
end;
showmessage(s);
end;

end.
请指教。
 
你上面的程序在while里面position值没有改变,导致position永远不等于0,陷于死循环
//
用stringreplace函数可以达到你要的效果
edit1.text:=StringReplace(edit1.text,',',',',[rfReplaceAll])
 
你的程序本来就是死循环

var
s:string;
position:integer;
begin
s:=edit1.Text;
position:=pos(',',s);
while position>0 do
begin
delete(s,position,2);
insert(',',s,position);
position:=pos(',',s);
end;
showmessage(s);
end;
 
原来楼上已经用了更简单直接的方法了!
 
太急了!
begin
s:=edit1.Text;

repeat


delete(s,position,2);
insert(',',s,position);
position:=pos(',',s);
until position=0
showmessage(s);
end;

谢谢!!!
 
多人接受答案了。
 

Similar threads

后退
顶部