AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

verkettete listen erstellen

Ein Thema von kriebs27 · begonnen am 24. Feb 2004 · letzter Beitrag vom 26. Feb 2004
 
Skiron

Registriert seit: 14. Dez 2003
153 Beiträge
 
#7

Re: verkettete listen erstellen

  Alt 24. Feb 2004, 12:09
wenn mich nicht alles täuscht, sind verkette listen nichts anderes als arrays
in delphi gehts damit ein bisschen einfacher:
Delphi-Quellcode:
var
  Liste: array of MeinTyp;

...
  setLength(Liste, 1); //setzt dann die länge des Arrays
...
falls es sich in der Aufgabe darum handelt, eine verkette liste zu programmieren, kannste das logisch nicht nehmen.
da gibts aber dann noch was lustiges:

anstatt dem ganzen:
Delphi-Quellcode:
type
  PMeinTyp = ^TMeinTyp;
  TMeinTyp = record
    Item: integer;
    Next: PMeinTyp;
  end;

var
  First: PMeinTyp;

...
  new(First); //oder so, weiß es nicht mehr genau...
...
kannste nehmen:
Delphi-Quellcode:
var
  First: ^Integer;
  ItemCount: integer;
  GesuchtesElement: ^Integer;

...
//beim 1. mal:
  First := allocMem(0);
  ItemCount := 0;
//danach:
  inc(ItemCount); //oder dec(ItemCount), fallses eins weniger werden sollte...
  reallocMem(First, ItemCount * sizeOf(integer));
//und der zugriff is ganz toll: (mit einer function)

function Element(Index: integer): Pointer;
asm
  push esi
  push eax
  mov esi, First
  mov eax, Index
  imul eax, sizeof(Integer)
  add esi, eax
  mov GesuchtesElement, eax
  pop eax
  pop esi
end;

...
falls das noch gilt, is nämlich schon (fast) ein array
Mann zu Frau:
Zieh dich aus, wir müssen reden!
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz