char array zu std::string
-
Hey leute ich suche eine Möglichkeit ein Char array in einen string zu bekommen.
Ich habe bereits diese Möglichkeit gefunden:std::string STRING=CharArrayallerdings kann ich diese Möglichkeit nicht verwenden weil der string in meinem Programm schon vorher initialisiert wird

und eine andere möglichkeit habe ich leider nicht gefunden.
Gibt es dasfür evtl. eine Funktion oder eine andere Lößung ?lg Sc0rpe
-
Wie wäre es mit
STRING=CharArray;
-
Doch, Zuweisung oder Konstruktoraufruf sind schon der richtige Weg, je nachdem, ob der String schon vorher existiert oder gerade erst erstellt wird.
allerdings kann ich diese Möglichkeit nicht verwenden weil der string in meinem Programm schon vorher initialisiert wird

Und? Dann benutz eine einfache Zuweisung.
http://www.cplusplus.com/reference/string/string/operator=/
-
Sc0rpe schrieb:
std::string STRING=CharArrayNormalerweise ist mir die Benennung von Variablen eigentlich egal, aber ich hoffe du verwendest nicht wirklich GROSSSCHREIBUNG für normale Variablen (Dies ist in der Regel eine Schreibweise die man bei Makros, und vielleicht noch bei globalen Konstanten findet).
-
Sc0rpe schrieb:
Normalerweise ist mir die Benennung von Variablen eigentlich egal, aber ich hoffe du verwendest nicht wirklich GROSSSCHREIBUNG für normale Variablen (Dies ist in der Regel eine Schreibweise die man bei Makros, und vielleicht noch bei globalen Konstanten findet).
da kann ich nur zustimmen, dass ist nicht die "feine Englishe art"

-
Ich glaube, eine potenziell bessere Möglichkeit, einem
std::stringeinchar-Array zuzuweisen:STRING.assign(CharArray, CharArray + sizeof CharArray);Vielleicht geht es ja um Binär-Daten, wer weiß.
-
Sone schrieb:
Ich glaube
Guter Indikator, um das Posten sein zu lassen. Gerade wenn das Problem schon gelöst ist.
Sone schrieb:
STRING.assign(CharArray, CharArray + sizeof CharArray);Reserviert wahrscheinlich zu viel Speicher. Und die nächste Frage wird sicher sein, warum das mit
char*nicht funktioniert. Sowieso wurde auf eine bessere Möglichkeit (Konstruktor oder Zuweisungsoperator) schon hingewiesen.Sone schrieb:
Vielleicht geht es ja um Binär-Daten, wer weiß.
Bestimmt, dafür verwendet man natürlich die auf Zeichenketten ausgelegte
std::string-Klasse. Triff bitte nicht ständig irgendwelche weltfremden Annahmen, von denen der Threadersteller nichts erwähnt hat, nur um verwirrende Posts zu rechtfertigen.