Announcement

Collapse
No announcement yet.

Char zu float

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Char zu float

    Hallo,

    ich habe ein char temp = "123,56". Diesen möchte ich zu float konvertieren. Habe dazu _tstof gefunden und das gemacht :

    Code:
    float x = (float)_tstof(temp);
    Leider ist mein Ergebnis:: 123
    Die Nachkommastellen sind weg. Muss ich noch etwas ergänzen oder eine andere Funktion verwenden?

    Edit : Habe gerade festgestellt, dass es am Komma liegt. Mit Punkt funktioniert es. Wie kann man denn simpel das Komma gegen den Punkt austauschen?
    Zuletzt editiert von Chickaria; 03.04.2013, 14:51.

  • #2
    Du erinnerst dich an die replace-Methode, die ich im anderen Thread gepostet habe...
    Christian

    Comment


    • #3
      Ja, danke. alles klar. Dachte es gibt da auch sowas wie _tcr... irgendwas.

      Comment


      • #4
        Leider nicht, wer in den "Niederungen" arbeiten muss, hat halt nur den Grundstock. Alternative ist noch, wenn du immer das Format ,00 hast, also immer Komma und 2 Stellen, dass du dann natürlich nicht die Schleife brauchst, sondern direkt den Index Länge -3 tauschen kannst. Weiterhin gibt es die STL die mit der Klasse "string" ein Klasse zu konfortablen Bearbeitung von Zeichenketten zur Verfügung stellt. Dort gibt es "replace"

        http://de.wikipedia.org/wiki/Standard_Template_Library

        http://www.sgi.com/tech/stl/

        http://www.sgi.com/tech/stl/basic_string.html
        Christian

        Comment


        • #5
          vielen Dank für dein Wissen.

          Comment


          • #6
            Hallo Chickaria, du wirst lachen, aber genau diese Übung hab ich gestern gemacht. Auch wenn dieses Thema älter ist, schreib ich mal meine Variante dazu!

            #include <iostream>

            using namespace std;

            int main (){


            char eingabe;
            float ausgabe;

            cout << "Zahl eingeben: ";
            cin >> eingabe;

            ausgabe = float(eingabe);

            cout << "Float ist: " << ausgabe;


            }

            Muss dazu sagen, dass ich noch Anfänger bin, was C++ (generell in Programmierung) bin.

            MfG Traumtänzerin

            Comment


            • #7
              Das hat überhaupt nichts mit der Fragestellung zu tun. Die Frage war, einen char in der Form 123,45 in einen float umzuwandeln und nicht über die Console einen float einzulesen
              Zuletzt editiert von Christian Marquardt; 11.10.2013, 21:58.
              Christian

              Comment

              Working...
              X