webForumDet fria alternativet

Step

4 svar · 343 visningar · startad av Alpha II

Alpha IIMedlem sedan maj 20002 993 inlägg
#1

Kan man använda i STEP i en for sats? Alltså istället för att gå upp med 1 och 1 i slingan. så ska man kunna välja själv hur mycket det ska stegra.

[redigering]
Hade skrivit fel. Var nog lite tröt när jag skrev det...
[/redigering]
------------------
KLICKA ABSOLUT INTE!!!

[Redigerat av Alpha II den 02 dec 2000]

BitstateMedlem sedan nov. 2000432 inlägg
#2

skummade igenom hjälpen til delhpi 4 och ,nepp verkar inte så. Finns flera sätt att komma runt dock, tex för 0,2,4..10:

I:=0;
while i<=10 do
begin
// jadda jadda jadda
i:=i+2;
end;

finns säkert ännu enklare sätt, tex att låta for..loopen bara gå från 0 tom 5 och sedan multiplicera med 2 ...

WiNNeMedlem sedan maj 2000192 inlägg
#3

Step finns inte alls i delphi/pascal, det används i basic och kanske i några andra språk också men gör som Bitstate föreslår, det funkar bra.

------------------
winne.net

BitstateMedlem sedan nov. 2000432 inlägg
#4

dags för ett lite 31134 (elit :) tips: om man har (många) for..satser som går från noll och uppåt får du en hastighetsökning genom att räkna baklänges, (dvs använda downto) detta beror på asm kommandot jnz (eller nåt liknande) som hoppar om ett värde når noll. Bra att veta om man tex leker med grafik och behöver fps :)

observera att detta enbart funkar med satser som räknar ner till 0.

jtMedlem sedan juni 2000350 inlägg
#5

Har man Delphis Optimering på så blir looparna optimerade utan att man behöver skriva om dessa. Altså en to loop blir automatiskt en downto.

När man debuggar kan detta göra att man tror delphi blivit tokig :-).

Detta gäller såklart bara om koden inte är beroende av räknar variablen.

127 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)