Wie kopiert man einen std::string in unsigned char-array?

Wie kopiert man einen std::string (Probe) auf ein unsigned char-array (trap)?

int main() {
    unsigned char trap[256];
    std::string sample = ".1.3.6.1.4";
    strcpy(trap,sample.c_str());
    std::cout << trap << std::endl;
}

Obigen code Fehler:

time.cpp: In function int main()’:
time.cpp:20: error: invalid conversion from unsigned char*’ to char*’
time.cpp:20: error:   initializing argument 1 of char* strcpy(char*, const char*)’
  • Mit ::memcpy() oder mit einer Besetzung auf char*.
  • kurze Antwort: Sie sollten es nicht tun. Benutzer char array statt.
  • Warum ist das, was Sie tun wollen?
  • Vielen Dank , im mit c++, also bitte schreiben Sie die cast-Linie in obigem Fall?
  • ich brauche zuweisen std::string in unsigned char-array
  • Ich weiß, was Sie tun müssen, ich weiß nicht, warum Sie es tun wollen.

InformationsquelleAutor Ragav | 2016-02-10
Schreibe einen Kommentar