AGB  ·  Datenschutz  ·  Impressum  







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

Übersetzung C -> Delphi: Switch ohne break

Ein Thema von Luckie · begonnen am 11. Mär 2008 · letzter Beitrag vom 29. Apr 2009
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

Übersetzung C -> Delphi: Switch ohne break

  Alt 11. Mär 2008, 13:40
Ich habe in Co folgende Switch-Anweisung:
Code:
switch x {
  case 0:
    tuwas;
    break;
  case 1:
    tuwas;
    // kein break, damit mit folgendem case-Zweig weitergemacht wird
  case 2:
    tuwas;
    break;
}
Ich kann in Delphi zwar schreiben:
Delphi-Quellcode:
case x of
  0:
  begin
  end;
  1, 2:
  begin
  end;
end;
Aber dann kann man den 2'er Zweig nie alleine ansprechen, was aber auch möglich sein muss. Ich habe nur die Werte 0 bis 2.

Wie löse ich so was am geschicktesten?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#2

Re: Übersetzung C -> Delphi: Switch ohne break

  Alt 11. Mär 2008, 13:52
Wenn ich mich nicht irre, gibt es sowas in Delphi nicht, das heißt,
du musst wohl oder übel den Code für 2 auch nochmal zu 1 kopieren

Wenns ganz viel Code ist, kannste es ja auch in ne funktion auslagern
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.202 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Übersetzung C -> Delphi: Switch ohne break

  Alt 11. Mär 2008, 13:54
Zitat von jfheins:
du musst wohl oder übel den Code für 2 auch nochmal zu 1 kopieren
Wenns ganz viel Code ist, kannste es ja auch in ne funktion auslagern
Ich würde dafür eine lokale Funktion nehmen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von ralfschwalbe
ralfschwalbe

Registriert seit: 19. Jul 2007
Ort: Lichtenstein/Sachsen
133 Beiträge
 
Delphi XE3 Professional
 
#4

Re: Übersetzung C -> Delphi: Switch ohne break

  Alt 11. Mär 2008, 13:56
Hi,

Delphi-Quellcode:
case x of
  0: begin
       tuwas_case0;
     end;
  1,
  2: begin
       tuwas_case1und2;
       if x = 2 then
       begin
         tuwas_case2;
       end;
     end;
end;
Ralf Schwalbe
viele Grüße...
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Übersetzung C -> Delphi: Switch ohne break

  Alt 11. Mär 2008, 14:27
Ich habe es jetzt einfach kopiert, es waren nur ein paar Zeilen. Aber danke für eure Vorschläge.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Haru

Registriert seit: 29. Apr 2009
Ort: Trassenheide
15 Beiträge
 
Delphi 7 Personal
 
#6

Re: Übersetzung C -> Delphi: Switch ohne break

  Alt 29. Apr 2009, 17:10
hätt jetzt zu dem thema auch mal ne frage.

wir sollen einen getränkeautomaten mit case programmiern. das programm soweit hab ich fertig. lediglich eine fehlermeldung stört mich und diese bekomm ich trotz inet hilfen nicht weg. könntet ihr mir helfen?
case edtGetr.text of (zur Getränke auswahl)dort sagt er mir
Zitat:
Ordinaltyp erforderlich
(kein String erlaubt) aber auch wenn ich dieses Editfenster bzw dem Text dort einen anderem Typ zuweise bekomme ich diese Fehlermeldung.

hoffe ihr könnt mir helfen =)
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#7

Re: Übersetzung C -> Delphi: Switch ohne break

  Alt 29. Apr 2009, 17:18
Zitat von Haru:
hoffe ihr könnt mir helfen =)
Jo: Es geht halt einfach nicht mit strings, sondern nur mit Ordinaltypen (alles was man zählen kann, also Integer, Word, Enums, Boolsche Ausdrücke (ok kann man nicht zählen aber egal ))
  Mit Zitat antworten Zitat
Haru

Registriert seit: 29. Apr 2009
Ort: Trassenheide
15 Beiträge
 
Delphi 7 Personal
 
#8

Re: Übersetzung C -> Delphi: Switch ohne break

  Alt 29. Apr 2009, 17:21
das weiß ich ja auch. aber wie gesagt. wenn ich edtGetr.text in zb integer umwandel gehts trotzdem nicht
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#9

Re: Übersetzung C -> Delphi: Switch ohne break

  Alt 29. Apr 2009, 17:25
Zitat von Haru:
das weiß ich ja auch. aber wie gesagt. wenn ich edtGetr.text in zb integer umwandel gehts trotzdem nicht
Wenn du in das Edit ne Zahl eingibst, dann geht das

Bzw. was "geht dann nicht"??
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.202 Beiträge
 
Delphi 10.4 Sydney
 
#10

Re: Übersetzung C -> Delphi: Switch ohne break

  Alt 29. Apr 2009, 17:26
Zitat von Haru:
das weiß ich ja auch. aber wie gesagt. wenn ich edtGetr.text in zb integer umwandel gehts trotzdem nicht
Wirklich nicht?

Delphi-Quellcode:
case StrToInt(edtGetr.text) of
  0:
  1:
end;
Oder kommt eine Exception das "..." kein gültige Zahl ist?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


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 03:26 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