2016-05-18 9 views
2

Wie Zeichenfolge "1 + 1" zu Summe (oder minus, Division, Multiplikation) in C++ konvertieren. Ich muss jede Zeichenfolge oder Text in mathematische Operation konvertieren.Konvertieren Zeichenfolge "1 + 1" zu Summe

+1

Einige der Antworten auf [diese Frage] (http://stackoverflow.com/q/11172217/3345375) könnten hilfreich sein. – jkdev

+1

duplizieren: [Auswerten arithmetischer Ausdrücke in C++] (http://stackoverflow.com/questions/9329406/evaluating-arithmetic-expressions-in-c) –

+1

Wenn Sie die Zeichenfolge zur Kompilierzeit auswerten möchten: http: // www .boost.org/doc/libs/develop/doc/html/metaparse/getting_started_with_boost_metap.html –

Antwort

1

Sie können eine for-Schleife verwenden, um die einzelnen Zeichen aus der Zeichenfolge zu extrahieren und die Zahlen mithilfe von stoi in int zu konvertieren. Dann würden Sie etwas wie eine Schleife machen, die das erste Element im int-Array und das erste Element im symbol-Array betrachtet und die Berechnung für das erste und zweite Element im int-Array durchführt. Sollte nicht zu schwer sein. Wenn Sie andere Hilfe benötigen, kann ich Ihnen wahrscheinlich helfen.

Edit: Nur um es ein wenig mehr klar

Schritt 1: Getrennte Zahlen und Zeichen aus der Zeichenfolge. Konvertieren und Speichern in separaten Arrays.

Schritt 2: Sehen Sie sich Element 1 und 2 im Array int an.

Schritt 3: Sehen Sie sich das Symbol im char-Array an.

Schritt 4: If-Anweisung oder Groß-/Kleinschreibung, die nach dem Symbol sucht und die Operation an Element 1 und 2 des int-Arrays ausführt.