CString in char Text[] konvertieren



  • Bin plan und ratlos was das Konvertieren angeht und
    bitte um Hilfe...

    Wie kann ich

    char Text[]="hallo";
    

    mit dem Wert aus

    CString backup="hi there";
    

    belegen ?

    Also praktisch Text[]=backup



  • gar nicht

    char Text[]="hallo";
    

    Das Text array hat ne größe von 5 bytes, das passt "hi there" nicht rein.
    Wenns die nur um die convertierung geht:

    CString backup="hi there";
    const char* Text = backup;
    //////////////////////////////////
    // oder
    //////////////////////////////////
    CString backup="hi there";
    char* Text = backup.GetBuffer();
    // achtung: Text jetzt ein zeiger auf den internen buffer der CString d.h:
    // 1) der buffer ist genau so groß wie der string im CString, 
    // also nix längeres rein kopieren. Falls du das doch vor hast gibts noch ne 
    // GetBuffer methode mit parameter
    // 2) Der buffer ist nur so lange gültig wie dein CString object
    // 3) wenn du den buffer veränderst auf jeden fall ReleaseBuffer aufrufen wenn
    // du fertig bist
    
    //////////////////////////////////
    // oder
    //////////////////////////////////
    CString backup="hi there";
    char* Text = new char[backup.GetLenght()+1];
    strcpy(Text,backup);
    // delete[] nicht vergessen
    


  • Hallo CMatt ! Vielen Dank, mit

    const char* Text = backup;
    

    läuft es nun so wie gewünscht. 👍


Anmelden zum Antworten