Einzelnen Beitrag anzeigen

idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#17

AW: Listen und wie man sie nutzt

  Alt 24. Jun 2010, 00:03
Überleg einmal, was passiert, wenn es genau ein Listenelement gibt.

Dein Developerbyindex wird genau einmal mit dem Parameter index=1 aufgerufen.

if index <= DevelopersCount liefert true

for i := 0 to index-1 do -> from 0 to 0, schleife wird genau einmal durchlaufen

current := current^.Next; -> first^.next = nil, weil es ja nur ein Listenelement gibt, der next pointer des ersten Listenelemts zeigt also auf kein weiteres.

current^.content = nil^.content = exception.


Im Posting 11 habe ich Dir schon geschrieben:

Zitat:
Wenn in der Schleife beim Weiterschalten einmal nil kommt, dann war der Index zu gross, da gehört eine Fehlermeldung oder was auch immer hinein.
Wenn Du das so überprüft hättest, hättest Du den Fehler schon längst gefunden.


Wenn Du das ERSTE Listenelemnt haben willst, musst Du 0 mal in der Schleife weitergehen, weil dzu Beginn zeigt Dein current ja schon auf das erste Element.
Du durchläufst die Schleife prinzipiell einmal zu oft, und fliegst deswegen am Ende hinaus.#

Geändert von mkinzler (24. Jun 2010 um 05:27 Uhr) Grund: Delphi-Tags eingefügt
  Mit Zitat antworten Zitat