dummes Problem: Zeichen und int



  • hi

    steh irgendwie grad auf der Leitung, wie bekomm ichs hin einen String zu bekommen, in dem ein beliebiger int Wert von 2 "|" eingeschlossen wird?

    also es soll dann so aussehen(int is z.B. mal 10): |10|

    einfach aneinander hängen geht ja leider nicht..

    beginner_



  • Hallo,
    Das kannst du bewerkstelligen, indem du deinen Int in einen String umwandelst (wie das geht, steht in der C++-FAQ - Thread: "Einmal Zahl nach String und zurück") und dann mittels der Methode insert() der Klasse string die beiden |-Zeichen am Anfang und am Ende anfügst.

    /edit: Beispiel:

    #include <iostream>
    #include <string>
    #include <sstream>
    using namespace std;
    
    int main()
    {
        int x = 9;
        ostringstream sstr;
        sstr << x;
        string s(sstr.str());
        s.insert(s.begin(), '|');
        s.insert(s.end(), '|');
    
        cout << "\n modified str: " << s << endl;
    }
    

    Caipi



  • habs auch ohne dein Beispiel geschafft,

    trotzdem danke

    ps: kann halt nicht einfach mal was unkompliziert sein? 😃

    beginner_



  • Caipi schrieb:

    int x = 9;
        ostringstream sstr;
        sstr << x;
        string s(sstr.str());
        s.insert(s.begin(), '|');
        s.insert(s.end(), '|');
    

    Ist allerdings leicht umständlich. Warum nicht einfach

    int x = 9;
        ostringstream sstr;
        sstr << '|' << x << '|';
    


  • groovemaster schrieb:

    Caipi schrieb:

    int x = 9;
        ostringstream sstr;
        sstr << x;
        string s(sstr.str());
        s.insert(s.begin(), '|');
        s.insert(s.end(), '|');
    

    Ist allerdings leicht umständlich. Warum nicht einfach

    int x = 9;
        ostringstream sstr;
        sstr << '|' << x << '|';
    

    Jup. Hast recht. Ich denke (leider) oft zu kompliziert [...]

    Caipi


Anmelden zum Antworten