Autor |
Beitrag |
Mrs. Sheep
      
Beiträge: 19
Win Vista
Delphi 2005 PE, Lazarus 0.9.26
|
Verfasst: Mi 04.03.09 20:31
Ich habe versucht ein Set zu deklarieren das die (kleinen) Buchstaben und Zahlen enthält. Problem:
Delphi-Quelltext 1: 2:
| TYPE Charset1 = #97..#122, #30..#39; TYPE Charset2 = Set of 'a'..'z' + '0'..'9'; |
Bei (1) erscheint am "," ein Error ...blablabla ";" erwartet...
Bei (2) kommt bei dem "+" ein Error ...blablabla inkompatible Typen "Char" und "String" (er sieht das anscheinend als 'z'+'0'='z0' an)
Hätte jemand die Güte mir zu sagen OB und WIE das geht?
(Ja, man kann es als Variablen machen aber ich bräuchte einen Typ)
|
|
jaenicke
      
Beiträge: 19313
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mi 04.03.09 20:42
|
|
Mrs. Sheep 
      
Beiträge: 19
Win Vista
Delphi 2005 PE, Lazarus 0.9.26
|
Verfasst: Mi 04.03.09 21:06
Nunjy, ich gebe zu eeeeetwas verwirrend und unklar war das schon... xD
Ich habe jetzt deinen COde (teilweise) übernommen. ABER:
Delphi-Quelltext 1: 2: 3:
| TYPE CharsetA = #97..#122; TYPE CharsetB = #30..#39; TYPE Charset = (CharsetA, CharsetB); |
In (3) kommt der Error: "[Fehler] Unit1.pas(24): E2004 Bezeichner redefiniert: 'CharsetA'"
Dann funktioniert es auch nicht...
Und das mit dem SET OF brauchte ich rücklickend doch nicht... hab jetzt den restlichen Quelltext geändert (was sowieso nötig war)
|
|
jaenicke
      
Beiträge: 19313
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mi 04.03.09 21:10
Bei deinem Quelltext hier: Delphi-Quelltext 1: 2:
| type Charset = (CharsetA, CharsetB); | Da deklarierst du CharsetA und CharsetB als mögliche Inhalte von Charset. Das heißt CharsetA und CharsetB sind dann Bezeichner in Delphi, die du in eine Variable vom Typ Charset hineinlegen kannst.
Deshalb wiederhole ich meine Frage: Was willst du damit machen?
Nebenbei: Typbezeichner sollten generell mit einem T am Anfang bezeichnet werden, Variablen ohne. Also TCharset statt Charset. Reservierte Worte wie type sollten klein geschrieben werden. Und es reicht auch einmal type zu schreiben, danach können mehrere Deklarationen folgen.
|
|
Mrs. Sheep 
      
Beiträge: 19
Win Vista
Delphi 2005 PE, Lazarus 0.9.26
|
Verfasst: Mi 04.03.09 21:22
ähm.. Stilfrage; ich schreibe ALLE Delphi-Wörter groß. Und das mit dem T... nunja, kann man nix machen.
Gut also was ich machen will:
Alle Kombinationen aus den Zeichen a,b,c..x,y,z,0,1..8,9. Nicht mehr, nicht weniger.
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| TYPE TCharset = #97..#122;
VAR Charset1, Charset2, Charset3, Charset4, Charset5: TCharset;
FOR Charset1:='a' TO 'z' DO FOR Charset2:='a' TO 'z' DO FOR Charset3:='a' TO 'z' DO FOR Charset4:='a' TO 'z' DO FOR Charset5:='a' TO 'z' DO BEGIN myString:=Charset1+Charset2+Charset3+Charset4+Charset5; |
Kurzer Nachtrag: Das Programm stürzt nach ca. 30 sec Laufzeit ab. Besser gesagt Windows-Taskmanager sagt: "Keine Rückmeldung" ob das PRogramm trotzdem noch funktioniert/weiterläuft weiß ich nicht.
|
|
Yogu
      
Beiträge: 2598
Erhaltene Danke: 156
Ubuntu 13.04, Win 7
C# (VS 2013)
|
Verfasst: Mi 04.03.09 21:29
Ah, jetzt kommen wir der Sache schon näher. Wie wär's denn mit einem Char?
Zur Stilfrage: DelphiTreff - Delphi-Styleguide. Schlüsselwörter schreibt man groß klein
Edit: klein!
Edit2: Schön, dass es immer noch aufmerksame EE-User gibt 
Zuletzt bearbeitet von Yogu am Mi 04.03.09 21:49, insgesamt 1-mal bearbeitet
|
|
Mrs. Sheep 
      
Beiträge: 19
Win Vista
Delphi 2005 PE, Lazarus 0.9.26
|
Verfasst: Mi 04.03.09 21:34
Yogu hat folgendes geschrieben : | Ah, jetzt kommen wir der Sache schon näher. Wie wär's denn mit einem Char?
|
Erbitte genauere Erklärungen/Quellcode; gewisses Unverständniss meinerseits =)
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mi 04.03.09 21:34
Delphi-Quelltext 1:
| VAR Charset1, Charset2, Charset3, Charset4, Charset5: Char; |
Das sollte doch ausreichen.
|
|
Mrs. Sheep 
      
Beiträge: 19
Win Vista
Delphi 2005 PE, Lazarus 0.9.26
|
Verfasst: Mi 04.03.09 21:38
und was wird dann aus den FOR... ??
Im geposteten Quellcode geht er ja nur bis Z aber ich brauch die zahlen ja noch die Zahlen!
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mi 04.03.09 21:43
Dann erweitere den Variablenbereich und prüf ggf. intern ab, ob Buchstabe oder Zahl. Oder nimm Arrays, das ginge auch noch.
|
|
jaenicke
      
Beiträge: 19313
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mi 04.03.09 21:59
Mrs. Sheep hat folgendes geschrieben : | Kurzer Nachtrag: Das Programm stürzt nach ca. 30 sec Laufzeit ab. Besser gesagt Windows-Taskmanager sagt: "Keine Rückmeldung" ob das PRogramm trotzdem noch funktioniert/weiterläuft weiß ich nicht. |
Naja, 26 Buchstaben plus 10 zahlen, das sind 36 Möglichkeiten. Bei 5 Stellen wie du es ja meinst (oder?) sind das 36^5, also ca. 60 Millionen Möglichkeiten. Und wenn du die jetzt alle in eine Memo oder so legen willst...
Was ist der Sinn an dem Ganzen?
|
|
alzaimar
      
Beiträge: 2889
Erhaltene Danke: 13
W2000, XP
D6E, BDS2006A, DevExpress
|
Verfasst: Mi 04.03.09 22:10
_________________ Na denn, dann. Bis dann, denn.
|
|
Yogu
      
Beiträge: 2598
Erhaltene Danke: 156
Ubuntu 13.04, Win 7
C# (VS 2013)
|
Verfasst: Mi 04.03.09 22:35
|
|