String nach Bool
-
Hallo Zusammen.
Erst mal frohe Weihnachten.
Weiß jemand wie Ich in C++ aus einem String mit Hilfe von Bool einen Logischen Ausdruck berechnen kann.
Also zum Beispiel:
Der String hat folgenden Inhalt (1|1&0).
Jetzt möchte ich aus diesem String mit Hilfe von Bool mein Ergebnis berechnen lassen.
Als Ergebnis müsste ich 1 erhalten, dieses Funktioniert aber nur wenn ich den Inhalt das Strings direkt in die Variable eingebe.#include <string>
#include <iostream>
using namespace std;int main ()
{
bool Eingabe;Eingabe = (1|1&0); //Eingabe in die Variable soll später aus den String kommen
cout << Eingabe << endl;
cin.get();
return 0;
}Vielen Dank für die Hilfe!
-
Wie möchtest du den rausbekommen ob der String true oder false ist ?
-
Ich möchte einfach das Ergebnis der Rechnung (1|1&0) bekommen.
Dieses müßte 1 sein da 1&0 = 0 ist und die Oderverknüpfung 0|1 = 1 ist.
Es ist eine Rechnung aus der Digitaltechnik.
Mein Problem ist jetzt nur das ich diese rechnung (1|1&0) in einem String habe.
Diesen muß ich jetzt in eine Bool Variable übergeben damit ich es ausgerechnet bekomme. Als Wert sollte er mir den Wert 1 (True) zurückgeben. Oder bei einer anderen Rechnung den Wert 0 (false).
Vielen Dank für die Mühe.
-
Dr. Nitro schrieb:
Ich möchte einfach das Ergebnis der Rechnung (1|1&0) bekommen.
Dieses müßte 1 sein da 1&0 = 0 ist und die Oderverknüpfung 0|1 = 1 ist.Wer sagt das? Genauso gut kann 0 rauskommen, wenn eine left-to-right Evaluation vorgenommen wird.
Für dein Problem brauchst du jedenfalls sowas wie einen Parser. Für sowas simples kann man sich das selber basteln. Dazu kannst du dir ja mal std::stringstream anschaun.