![]() |
Fehlersuche im Quellcode
kann jemand was mit dem quelltext anfangen ??
Delphi-Quellcode:
wenn ja was ist der fehler und wo ist er und kann jemand den fehler beheben und es mir sagen was der fehler ist !!
unit textmenge;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TAufbaumenge = SET OF 'A'..'Z'; TForm1 = class(TForm) Edit1: TEdit; Label1: TLabel; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; Aufbaumenge,Pruefmenge: TAufbaumenge; Textanzahl: integer; Text: string; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var i:integer; begin Aufbaumenge :=[ ]; Pruefmenge := ['a'..'z'] + ['A'..'Z']; Textanzahl:=length(edit1.text); Text:=edit1.text; for i:=1 to Textanzahl do begin if pruefmenge IN text then include(Aufbaumenge,Text[i]); end; end; end. danke !! [edit=Admin]Code in [ delphi ]-Tags gesetzt und einen passenderen Titel gewählt. Dies bitte künftig selber machen! Danke. Mfg. Daniel[/edit] |
Hi,
hab mir jetzt nicht alles angeschaut, nur bis zum 1. Verdacht :D Mich dünkt da fehlt ein zweites Type vor TForm1=class(TForm) Grüße Minz |
meines Wissens nach ist das nicht nötig, das zweite Type. Aber generell verwende ich das auch so wegen der Lesbarkeit ;)
|
Ich habe zwar noch nie mit Mengen gearbeitet, aber ich denke, beide Operatoren (vor und nach IN) sollten vom Typ SET sein. Das sagt auch die Fehlermeldung aus:
Zitat:
|
Hallo,
es muss
Delphi-Quellcode:
heissen.
if Text[i] in pruefmenge then
Da Pruefmenge vom Type TAufbaumenge ist bringt die Anweisung
Delphi-Quellcode:
nichts. Da TAufbaumenge ein SET of 'A'..'Z' ist. D.h. Variablen vom Type TAufbaumenge können nur Großbuchstaben enthalten. D.h. Pruefmenge wird nach der o.g. Anweisung nur die Menge der Großbuchstaben enthalten.
Pruefmenge := ['a'..'z'] + ['A'..'Z'];
Interessanterweise bringt der D5-Compiler bei eingeschalteter Bereichsprüfung keine Fehlermeldung. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:50 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