CStrings addieren



  • Hallo,

    ich muss gerade ein Projekt in VC++ 6 programmieren, normal verwende ich BCB6.

    Wie kann ich unter VC++ zwei Strings addieren? Ich möchte dabei gerne die CString
    Klasse verwenden und kein char *

    das hier funktioniert:

    CString sID="200", sTemp="0x";
    sID = sTemp + sID;
    

    aber warum das hier nicht:

    iID = 0x200;
    CString sID="", sTemp="0x";
    itoa (iID, (char*)(LPCTSTR)sID, 16);
    sID = sTemp + sID;
    

    ich möchte aus einem Interger einfach nur einen Hex Wert mit
    vorgestelltem "0x" machen.

    Unter BCB wäre das ein:

    AnsiString sID = "0x" + IntToHex(iD, 2);
    


  • Benutze Stringstreams.

    Bye, TGGC (Pipe my World.)



  • Dann versuch es mal mit CString::Format() ...

    iID = 0x200; 
    CString sID, sTemp="0x"; 
    itoa (iID, (char*)(LPCTSTR)sID, 16); 
    sID.Format("%s%s", sTemp, sID);
    

    Das sollte funktionieren...

    Gruß
    :: NoName ::



  • Danke!

    Mit .Format und .Insert hab ich es hinbekommen.
    Das Instert hab ich benötigt, weil ich ein Array
    of char als hex String darstellen möchte.


Anmelden zum Antworten