int x = CString ...
-
Hallo,
ich habe eine CString-Variable und möchte den Inhalt dieser sozusagen als Formel verwenden.
zB wird die CString durch eine Edit-Box auf "x*x" gesetzt; dann möchte ich dass mir daraus dann die Zeile y = x*x entsteht (die Werte von x sind bekannt usw) - ich möchte nur wissen wie ich das formulieren kann, da y = CString ja nicht funktioniertmfg
-
Da müsstest du den String parsen, was in dem Fall wahrscheinlich komplizierter ist, als du dir vorstellst. Such einfach mal im Forum nach "Formel parsen" oder so, dann findest du Threads wie den hier:
http://www.c-plusplus.net/forum/47113
Muss denn wirklich jede Form von Formel ausgewertet werden? Wenn du den Funktionsumfang eingrenzen kannst (z.B. nur 2 Operanden), wird es deutlich einfacher und ist u.U. mit wenigen Handgriffen getan.
-
Schade, aber eine "einfache" Möglichkeit gibt es also nicht?
Trotzdem vielen Dank, ich werd mich mal ein wenig umsehen (jetzt wo ich weiss nach was ich suchen muss :>)
-
nuubskilled schrieb:
Schade, aber eine "einfache" Möglichkeit gibt es also nicht?
Du kannst ja mal nach irgendwelchen libs suchen, die sowas schon können. Da gibt's sicher was.
-
Ansonsten ist ein einfacher Formel-Parser ( grundrechenarten und klammerung ) nicht so extrem schwer zu programmieren. Aber es dauert halt schon ein Weilchen
-
Hallo nuubskilled,
meinen "FunktionsParser" habe ich unter http://www.c-plusplus.net/forum/p1780654#1780654 beschrieben (inkl. Download-Link).
Einzig wie beschrieben, müßtest du ein paar Klassen(namen) anpassen.