当前位置:主页>仓库管理软件> 列表

for循环为什么从最后一个值开始 ? 找最好的进销存软件

记账软件版1楼: 碰到极度郁闷的事 打开了两个delphi7
用了个API获取逻辑盘符
在一个delphi里编译的没问题 代码如下:
FillChar(temp[0],256,0);
getlogicaldrivestrings(255,temp);
for i:= 0 to 254 do
begin
LABEL1.CAption:=inttostr(i);
if temp[i]=#0 then
if temp[i+1]=#0 then
label1.Caption :=temp
else temp[I]:='';'';
end;
在另一个delphi7里的菜单单击事件里把以上代码copy过来 这下可郁闷了 监视的i值是从254开始的
有知道这是怎么回事吗?

2楼: 这个没关系的:)

实际效果并不是从254到0的,可能是delphi这样处理起来效率高点 如最好的进销存软件

3楼: 以前我也见过类似的问题,但不知道是什么原因。

4楼: 不是,我觉得 这样绝对有效率因素

5楼: 我也碰到了,不知道为何?不过好像一直没有出过错!

6楼: 我想是因为Delphi使用了类似C++中Static类型的变量来Debug,跟踪的时候,任何一个Delphi实例做了修改,则整体有效,也就是说这两个i尽管在不同的IDE中编译运行,但实际访问的可能是同一地址

记账软件版7楼: 问题已解决 #0忘了加引号
虽然问题解决了 但是引出的确是 不清楚delphi对#0的详细解释