String umwandeln
-
Hallöchen..
Gibt es eine Möglichkeit einen std::string in char* zu casten?Habe es mit der offensichtlichen Art
char* ptr; string str = "test"; ptr = static_cast<char*>(str);versucht. (Natürlich) ohne Erfolg.
-
Du kannst mit der Methode string::c_str() ein konstantes char-array mit dem Inhalt des Strings bekommen.
Willst du das dann aber verändern, musst du es wohl in ein char-array kopieren.
-
Eigentlich bekommst du nur einen konstanten char-Pointer (Arrays kann man in C/C++ nicht zurückliefern). Das const könntest du wegcasten, was aber sehr böse wäre.
-
Naja kommt darauf an, wofür du das brauchst ... normal solltest du immer mit einem gewöhnlichen const char* auskommen. Wenn das mal nicht der Fall sein sollte, geh den Umweg über char* arr = new char[size + 1]; delete [] arr; usw ... und weiß dan am Ende dem String arr zu.