AGB  ·  Datenschutz  ·  Impressum  







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

Arrays verursachen Zeigerprobleme

Ein Thema von Circle · begonnen am 21. Sep 2005 · letzter Beitrag vom 21. Sep 2005
Antwort Antwort
Circle

Registriert seit: 11. Okt 2004
48 Beiträge
 
#1

Arrays verursachen Zeigerprobleme

  Alt 21. Sep 2005, 14:25
Hallo zusammen
Ich zeig gleich mal den code.

Delphi-Quellcode:
procedure TForm1.JvButton1Click(Sender: TObject);
var email : string;
    wurzel : integer;
    i, j : integer;
    codes : array of integer;
    res : array of integer;
begin
  JvEdit2.Text := '';
  Setlength(codes,1);
  SetLength(res,1);
  email := '';
  email := JvEdit1.Text;
  wurzel := 163;

  SetLength(codes, Length(email));
  SetLength(res, Length(email));

  for i := 1 to Length(email) do begin
    codes[i] := ord(email[i]);
    ShowMessage(IntToStr(codes[i]));
  end;

  for j := 1 to Length(email) do begin
    res[j] := codes[j] * wurzel;
    ShowMessage(IntToStr(res[j]));
    JvEdit2.Text := (JvEdit2.Text + IntToStr(res[j]) + ':');
  end;

  end;
wie man sieht, ist es eine einfache art buchstaben zu "code"zahlen umzurechnen.
das funktioniert eigentlich auch, bis auf das problem, das immer wieder die fehlermeldung "unzulässige zeigeroption" oder so erscheint. er gibt mir das resultat zwar aus. wenn ich z.b. ins textfeld "test" eingebe, funktionierts. wenn ich das programm jetzt schliesse kommt wieder der fehler. oder wenn ich nach der eingabe von test, z.b. nur tes schreibe oder einfach was anderes, kommt der fehler auch. weiss wer woran das liegen könnte?
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#2

Re: Arrays verursachen Zeigerprobleme

  Alt 21. Sep 2005, 14:47
alter fehler aber immer wieder vorkommender fehler!
Dynamische arrays beginnen bei 0 und gehen bis Anzahl-1 !!!

hier...

Delphi-Quellcode:
procedure TForm1.JvButton1Click(Sender: TObject);
var email : string;
    wurzel : integer;
    i : integer;
    codes : array of integer;
    res : array of integer;
    anzahl:integer;
    anzeige:string;
begin
  anzeige:='';
  email := JvEdit1.Text;
  wurzel := 163;

  anzahl :=Length(email);

  SetLength(codes, anzahl);
  SetLength(res, anzahl);

  for i := 0 to anzahl-1 do
  begin
    codes[i] := ord(email[i+1]);
    res[i] := codes[i] * wurzel;
    anzeige:= anzeige + IntToStr(res[i]) + ':';
  end;
  JvEdit2.Text := anzeige;
end;
  Mit Zitat antworten Zitat
Circle

Registriert seit: 11. Okt 2004
48 Beiträge
 
#3

Re: Arrays verursachen Zeigerprobleme

  Alt 21. Sep 2005, 14:50
joppp tnx, hab ich nedmal gemerkt da der stringarray bei 1 anfing. tnx
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Arrays verursachen Zeigerprobleme

  Alt 21. Sep 2005, 14:54
email ist ja auch ein String, der beginnt bei 1. Es ging um das dynamische Array codes.

//Edit: Wie frech! Da editiert der Schelm doch einfach, während ich schreibe und ich bekomme keinen roten Kasten
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#5

Re: Arrays verursachen Zeigerprobleme

  Alt 21. Sep 2005, 15:01
@leddle: auch ein immer wieder gerne gemachter fehler aber dafür ist ja der edit-button

die frage ist doch warum machst du das überhaupt mit dyn arrays?

Delphi-Quellcode:
procedure TForm1.JvButton1Click(Sender: TObject);
var email : string;
    i : integer;
    anzeige:string;
begin
  anzeige:='';
  email := JvEdit1.Text;

  for i := 1 to length(email) do
  begin
    anzeige:= anzeige + IntToStr(ord(email[i]) * 163) + ':';
  end;

  JvEdit2.Text := anzeige;
end;
  Mit Zitat antworten Zitat
Circle

Registriert seit: 11. Okt 2004
48 Beiträge
 
#6

Re: Arrays verursachen Zeigerprobleme

  Alt 21. Sep 2005, 15:38
ich mach das mit dyn-arrays, da ich ja nicht weiss wie lange die eingegebene e-mail adresse ist.
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Arrays verursachen Zeigerprobleme

  Alt 21. Sep 2005, 15:43
...was ja das Benutzen eines Strings, wie ibp es vorgeschlagen hat, nicht wirklich ausschließt.

PS: @ibp: Ich lieeeeebe deinen Avatar

//Edit:
Aber IMHO läßt sich dein Code auch noch kräftig zusammenfassen und entmüllen.
//Edit2:
War natürlich nicht an ibp gerichtet, sondern an Circle
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  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 04:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz