![]() |
Aus String ein Operationszeichen machen
Hallo,
wie kann ich aus einen String ein Operationszeichen haben??? Ich habe in meinen String (s) folgende Operationszeichen gespeichert. s:='+' oder s:='-' oder s:='*' oder s:='/' wer kann mir helfen??? mfg |
Re: Aus String ein Operationszeichen machen
Moin Christian,
meinst Du sowas
Delphi-Quellcode:
?
case s[1] of
'/' : ... '*' : ... //... end; |
Re: Aus String ein Operationszeichen machen
Zitat:
|
Re: Aus String ein Operationszeichen machen
Einfach eine Fallunterscheidung einbauen... so wie oben mit der case-Anweisung und dann für jeden der vier Fälle eben eine andere Rechnung.
|
Re: Aus String ein Operationszeichen machen
ja ok und wie muß ich meine variable deklarieren in der ich dann das operationszeichen speichere???
|
Re: Aus String ein Operationszeichen machen
So ginge es:
Delphi-Quellcode:
type
TOperation = (Plus, Minus, Multiply, Divide); case s of '/' Operation := Divide; // ... end; |
Re: Aus String ein Operationszeichen machen
Einen Typ dem man dann etwa so benutzt
Delphi-Quellcode:
gibts leider nicht.
var
foo : TCalcOperator foo:= '+'; . . A= B foo C; Du musst dann in die Fallunterscheidung wie Christan sie gezeigt hat, für jeden Fall die Rechnung hinschreiben, also etwa so
Delphi-Quellcode:
case s of
'+': A:= b+c; '-': A:= b-c; usw end; |
Re: Aus String ein Operationszeichen machen
sorry ich hab mich geirrt. ist schon gut.
|
Re: Aus String ein Operationszeichen machen
TCalcOperator ist kein Vordefinierter Typ von Delphi. In diesem Fall sähe die Deklaration so aus:
Delphi-Quellcode:
type
TCalcOperator = type Char; |
Re: Aus String ein Operationszeichen machen
christian guck mal genauer hin. er hat dir ein beispiel wie es nicht funktioniert gepostet, und darunter eins das funzen sollte
und du hast das nicht funzende benutzt ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:26 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