j := 1; while (j<=6) do begin r:=Sock_YN(10,d_ip_id[j,1],d_ip_id[j,2]); if r= '0' then begin // end else Inc(j); end;
在for循环中不能对j进行赋值:j:=j-1; 根本就编译不过?? 错误如下: assignment to for _loop variable 'j';
var i,j:Integer;r:string for j:=1 to 6 do begin i:=j; r:=Sock_YN(10,d_ip_id[i,1],d_ip_id[i,2]); if r='0' then begin r:=Sock_YN(10,d_ip_id[i-1,1],d_ip_id[i-1,2]); end; end; 另外用一个变量i代替j,应该可以。
j := 1; I := J; for j:=1 to 6 do begin r:=Sock_YN(10,d_ip_id[I,1],d_ip_id[I,2]); //换成I啦 if r= '0' then begin // end else I := J; end;
看来只能用while语句了,以前也没有注意到这件事。
To:thirdapple(第三只苹果) and thirdapple(第三只苹果) 不成呀, 那样for循环还是往下走了。。 我是意思是说如果r=0则一直要执行这一句,直到不等于0时再往下走,最好能要这做一下延缓。。
就是吗 用while 就可以吗!
延缓用一个奔办法 加入一个 for 就成 for j:=1 to 6 do begin r:=Sock_YN(10,d_ip_id[j,1],d_ip_id[j,2]); while r='0' do begin //Sock_YN(10,d_ip_id[j-1,1],d_ip_id[j-1,2]);///这句 end; for jjj=0 to 10000 do begin end; end;试试看
while (j<=6) do
begin
r:=Sock_YN(10,d_ip_id[j,1],d_ip_id[j,2]);
if r= '0' then
begin
//
end
else
Inc(j);
end;
根本就编译不过??
错误如下:
assignment to for _loop variable 'j';
for j:=1 to 6 do
begin
i:=j;
r:=Sock_YN(10,d_ip_id[i,1],d_ip_id[i,2]);
if r='0' then
begin
r:=Sock_YN(10,d_ip_id[i-1,1],d_ip_id[i-1,2]);
end;
end;
另外用一个变量i代替j,应该可以。
I := J;
for j:=1 to 6 do
begin
r:=Sock_YN(10,d_ip_id[I,1],d_ip_id[I,2]); //换成I啦
if r= '0' then
begin
//
end
else
I := J;
end;
那样for循环还是往下走了。。
我是意思是说如果r=0则一直要执行这一句,直到不等于0时再往下走,最好能要这做一下延缓。。
延缓用一个奔办法
加入一个 for 就成
for j:=1 to 6 do
begin
r:=Sock_YN(10,d_ip_id[j,1],d_ip_id[j,2]);
while r='0' do
begin
//Sock_YN(10,d_ip_id[j-1,1],d_ip_id[j-1,2]);///这句
end;
for jjj=0 to 10000 do
begin
end; end;试试看
j := 1;
while (j<=6) do
begin
r:=Sock_YN(10,d_ip_id[j,1],d_ip_id[j,2]);
if r<> '0' then
Inc(j);
end;