AGB  ·  Datenschutz  ·  Impressum  







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

Problem mit Zeigern

Ein Thema von praesident · begonnen am 29. Feb 2008 · letzter Beitrag vom 1. Mär 2008
Antwort Antwort
praesident

Registriert seit: 29. Feb 2008
25 Beiträge
 
#1

Re: Problem mit Zeigern

  Alt 29. Feb 2008, 22:54
ich hab noch ein kleines problem...

und zwar, wenn ich nun eine zweite liste erzeuge und dort soll die erste in umgekehrter reihenfolge hineingeschrieben werden.....

dafür habe ich zkopf und zkopf2 in der ersten unit deklariert...die waren vorher gar nicht deklariert

allerdings bekomme ich jetzt immer diese fehlermeldung: [Fehler] Unit1.pas(51): Die Typen der tatsächlichen und formalen Var-Parameter müssen übereinstimmen


hier nocheinmal die zugehörige Prozedur:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
VAR laeng,i:byte;
    zkopf,zkopf2 :tzeiger;
begin
  init(zkopf);
  laeng:=length(edit1.Text);
  FOR i:=1 TO laeng DO
     push(zkopf,edit1.text[i]);

  init(zkopf2);
  FOR i:=1 TO laeng DO
     push(zkopf2,pop(zkopf));
  edit1.text:=top(zkopf2);
end;
die pop-funktion:

Delphi-Quellcode:
FUNCTION pop(VAR zkopf:tzeiger):char;
VAR zhilf1,zhilf2:tzeiger;
    z:char;
BEGIN
 zhilf1:=zkopf;
 zhilf2:=zkopf^.next;
 WHILE NOT(zhilf2^.next = NIL) DO
  BEGIN
   zhilf1:=zhilf2;
   zhilf2:=zhilf2^.next;
  END;
  zhilf1^.next:=NIL;
  pop:=zhilf2^.inhalt;
END;


und die im vorigen teil besprochene push prozedur:

Delphi-Quellcode:
PROCEDURE push(VAR zkopf:tzeiger;inhalt:char);
VAR zhilf, zneu:tzeiger;
BEGIN
  //erstes Element soll angelegt werden
  if zkopf = nil then
    begin
      new(zhilf);
      zhilf^.inhalt := inhalt;
      zhilf^.next := nil;
      zkopf := zhilf;
    end
  //eine weiteres Element soll angehängt werden
  else
    begin
      zhilf:=zkopf;
      while (zhilf <> nil) and (zhilf^.next <> nil) do
          zhilf:=zhilf^.next;
      new(zneu);
      zneu^.inhalt:=inhalt;
      zneu^.next:=NIL;
      zhilf^.next:=zneu;
    end;

END;
danke
  Mit Zitat antworten Zitat
Antwort Antwort


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 00:43 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