Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi case STRING of ? (https://www.delphipraxis.net/7933-case-string.html)

Pseudemys Nelsoni 24. Aug 2003 19:28


case STRING of ?
 
hoi,

kann ich in case anweisungen auch andere sachen als char u. integer benutzen? das würds mir viel leichter machen...

bei:

Delphi-Quellcode:
case command of
  '374': begin
            //irgendwas
          end;
  '376': begin
            //irgendwas
          end;
  '377': begin
            //irgendwas
          end;
end;

bekomme ich den fehler, das der typ Ordinal sein muss

:(

Hansa 24. Aug 2003 19:30

Re: case STRING of ?
 
Dann hast Du doch schon die Antwort, warum fragst Du? Mußt halt auf if zurückschalten. :mrgreen:

Luckie 24. Aug 2003 19:31

Re: case STRING of ?
 
Esrtmal so nicht, da case nur ordinal Werte auswerten kann. Man kann auch eine Konstruktion basteln mit der man auch Strings auswerten kann, diese ist aber, meiner Meinung nach, Murks.

Pseudemys Nelsoni 24. Aug 2003 19:31

Re: case STRING of ?
 
ich frag mich wo das problem liegt das auch für strings zu realisieren?

Pseudemys Nelsoni 24. Aug 2003 19:32

Re: case STRING of ?
 
hmz, ok, danke^^

Hansa 24. Aug 2003 19:36

Re: case STRING of ?
 
Wenn ich mir aber mal Deine Zahlen 374, 376,377 ansehe, dann liegt doch auf der Hand nur 4,6,7 zu berücksichtigen und das kannst Du dann mit
Delphi-Quellcode:
CASE

Illuminator-23-5 24. Aug 2003 19:42

Re: case STRING of ?
 
sonst dürfte folgendes reichen:
Delphi-Quellcode:
function caseHelp(text: string; list: array of string): integer;
var
  i: integer;
begin
  result := 0;
  for i := 0 to length(list) - 1 do
    if list[i] = text then
      result := i;
end;
das ganze ruft man dann so auf:
Delphi-Quellcode:
case caseHelp(command, ['374', '376', '377'{, ...}] of
  0: ...
  1: ...
  2: ...
end;

Hansa 24. Aug 2003 19:49

Re: case STRING of ?
 
Ja, so habe ich das auch schon gemacht. So gehts auch. :thuimb: Oder wie wärst den String in eine Zahl umzuwandeln, sofern er nur Zahlen enthält? :mrgreen:

CalganX 24. Aug 2003 20:19

Re: case STRING of ?
 
Warum denn eigentlich so umständlich?
Delphi-Quellcode:
case StrToInt(command) of
  374: {...}
  {...}
end;
Chris

PS: Das Suchen in der Code-Library hätte auch was ergeben: case stringcase string

Hansa 24. Aug 2003 22:55

Re: case STRING of ?
 
was ist da umständlich ? :hi: Trittbrettfahrer :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:20 Uhr.
Seite 1 von 2  1 2      

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