String to Array



  • Hi,
    ich hab ne Frage:
    Wie kann ich einen String in ein Array umwandeln?

    string = array
    

    geht ja,aber wie bekomm ich den String wieder nach array?

    Danke im voraus.



  • wenn ich dich richtig verstanden hab, müste es das sein...

    char array[23];
    string str = "hello world";
    
    strcpy(array, str.c_str());
    

    mfg blan



  • Strings schrieb:

    Hi,
    ich hab ne Frage:
    Wie kann ich einen String in ein Array umwandeln?

    string = array
    

    geht ja,aber wie bekomm ich den String wieder nach array?

    Danke im voraus.

    Hallo,
    Ich gehe mal davon aus, dass du mit "strings" die Klasse std::string und mit "Arrays" ein char-Array meinst.

    Wie du richtig bemerkt hast, kannst du ein char-Array über den Copy-Ctor von std::string in einen std::string konvertieren.

    Umgekehrt gehts Folgendermaßen:

    #include <cstring> // für strcpy(), strncpy()
    
    ...
    char str[11];
    string s("Hallo C++!");
    strcpy(str, s.c_str()); // kopiert s.c_str() nach str
    
    // bzw.
    strncpy(str, s.c_str(), 11); // kopiert 10 Zeichen + '\0' von s.c_str() nach str
    

    Gruß Caipi



  • Danke 🙂
    Dachte das der c_string Privat sei,naja man lernt nie aus 😉

    MFG



  • Arghh seh grade das das eine Methode ist



  • Hallo, um nicht noch einen neuen Thread zu eröffnen will ich hier mein Problem schnell schildern.

    Ich möchte gerne ein string-Objekt erstellen. Der Konstruktor bekommt als Parameter eine Zeichenfolge(vorliegend als char*).
    Das string Objekt muss dynamisch erstellt werden. (um später in einem Vector gespeichert zu werden)

    mein code:

    void Klassenname::methode ( char cWort){
    string
    wort = new string( cWort);
    printf( " das Wort ursprünglich: %s \n", cWort) ;
    printf( " das Wort als string: %s \n, wort->c_str);
    }

    Die gewünschte Ausgabe beim Aufruf mit --methode("Hallo");-- ist:

    das Wort ursprünglich: Hallo
    das Wort als string: Hallo

    aber ich bekomme:
    das Wort ursprünglich: Hallo
    das Wort als string: é Ñ

    Ich benutze Visual Studio 7
    und importiere <string> <stdio.h>

    An was kann dies liegen?

    Da ich morgen das Programm abgeben muss, hoffe ich, dass mir einer von euch helfen kann. Ich wäre sehr dankbar!

    Gruß Karl



  • *handanstirnhau*

    c_str -->c_str(), da es ja eine Methode ist

    Problem gelöst


Anmelden zum Antworten