读书人

delphi的递归调用是不是要注意什么?解

发布时间: 2012-03-29 12:53:12 作者: rapoo

delphi的递归调用是不是要注意什么?
procedure Tform1.Filelist(path:string);
var
searchRec:TsearchRec;
Fcount:integer;
begin

if not (rightstr(trim(path),1)='\')then
path:=path+'\';
Fcount:=FindFirst(path+'*.*',faAnyFile,SearchRec); { }
while(Fcount)=0 do

begin
if (SearchRec.Attr=16)and (SearchRec.Name<>'.')and (SearchRec.Name<>'..')then
begin

filelist(path+SearchRec.Name);

end
else
begin
listbox1.Items.Add(SearchRec.Name);
Fcount:=FindNext(SearchRec);
end;
end;

findclose(SearchRec);

end;


怎么我就跳不出这个循环呢,当把filelist(path+SearchRec.Name);给屏蔽了换成别的就可以,不然当然Fcount不等于0跳出来后又会跑回去,真是搞不懂,求指点!

[解决办法]
kaikai_kk
的眼睛太利锐了,
[解决办法]
确定试了???这样看的清楚些

Delphi(Pascal) code
while(Fcount)=0 dobegin  if (SearchRec.Attr=16)and (SearchRec.Name<>'.')and (SearchRec.Name<>'..')then    filelist(path+SearchRec.Name)  else    listbox1.Items.Add(SearchRec.Name);  Fcount:=FindNext(SearchRec);end; 

读书人网 >.NET

热点推荐