AGB  ·  Datenschutz  ·  Impressum  







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

Problem mit Pointern

Ein Thema von fwsp · begonnen am 22. Apr 2006 · letzter Beitrag vom 22. Apr 2006
 
fwsp
(Gast)

n/a Beiträge
 
#1

Problem mit Pointern

  Alt 22. Apr 2006, 13:01
hallo

ich hab da ein problem mit pointern, immer wenn ich den code ausführ, bekomm ich ne AV. aber eigentlich sollte doch speicherplatz reserviert sein. ich kenn mich nicht so toll mit pointern aus, vielleicht findet jemand den fehler?

die funktion kriegt im prinzip nen string, mit gewissen buchstaben, und zeichnet daraufhin nach bestimmten regeln. ist ein lindenmayer-system.

danke.

hier die typ deklarationen:
Delphi-Quellcode:
type
  PPosition = ^TPosition;
  TPosition = record
    x: Integer;
    y: Integer;
    xHlp: Integer;
    yHlp: Integer;
end;
hier die funktion:
Delphi-Quellcode:
procedure DrawIteration(Const Axiom: String; L, Degree: Real;
  var Turtle: TTurtle; var ProgBar: TProgressBar);
var
  i: Integer;
  Pt: ^TPosition;
begin
  GetMem(Pt, 0);
  ProgBar.Max := Length(Axiom);
  for i := 1 to Length(Axiom) do
  begin
    Application.ProcessMessages;
    case Axiom[i] of
      'F': Turtle.FD(L);

      'f':
      begin
        Turtle.PU;
        Turtle.FD(L);
        Turtle.PD;
      end;

      '+': Turtle.LT(Degree);

      '-': Turtle.RT(Degree);

      '[':
      begin
        GetMem(Pt, (SizeOf(Pt) + SizeOf(TPosition)));
        Pt.x := Turtle.PosX;
        Pt.y := Turtle.PosY;
        Turtle.PU;
        Turtle.FD(250);
        Pt.xHlp := Turtle.PosX;
        Pt.yHlp := Turtle.PosY;
        Turtle.MoveXY(Pt.x, Pt.y);
        Turtle.PD;
      end;

      ']':
      begin
        Turtle.PU;
        Turtle.MoveXY(Pt.x, Pt.y);
        Turtle.SetHXY(Pt.xHlp, Pt.yHlp);
        GetMem(Pt, (SizeOf(Pt) - SizeOf(TPosition)));
        Turtle.PD;
      end;
    end;
    ProgBar.Position := i;
  end;
  FreeMem(Pt);
end;
  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 20:25 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