Konvertierung von string zu char - c++
Für ein Programm ich Schreibe, basiert auf Spezifikationen, die variable übergeben, in einer Funktion als string. Ich brauche, um diesen string zu einem char-variable, um eine andere variable. Wie würde ich gehen über das tun dies?
Dies ist in der header-Datei:
void setDisplayChar(char displayCharToSet);
dies ist die Funktion, setzt es:
void Entity::setElementData(string elementName, string value){
if(elementName == "name"){
setName(value);
}
else if(elementName == "displayChar"){
// char c;
// c = value.c_str();
setDisplayChar('x');//cant get it to convert :(
}
else if(elementName == "property"){
this->properties.push_back(value);
}
}
Danke für die Hilfe, advanced!
Sie meinen, Sie wollen einfach nur zum übergeben, das erste Zeichen?
Überprüfen, dass der Wert ein Zeichen in der Länge sind, ideal. Auch: pass von const& 😉
value[0]
.Überprüfen, dass der Wert ein Zeichen in der Länge sind, ideal. Auch: pass von const& 😉
InformationsquelleAutor ModdedLife | 2013-02-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie ein bestimmtes Zeichen aus einem string einfach durch Indizierung. Zum Beispiel, das fünfte Zeichen von
str
iststr[4]
(ausschalten, indem man da das erste Zeichen iststr[0]
).Halten Sie im Verstand, den Sie auf Probleme stoßen, wenn der string kürzer als index denkt, es ist.
c_str()
, wie Sie in Ihren Kommentaren, gibt Ihnen einechar*
Repräsentation (der ganze string als C "string", mehr richtig ein Zeiger auf das erste Zeichen), anstatt einechar
.Könnte man ebenso index, aber es gibt keinen Punkt in diesem speziellen Fall.
InformationsquelleAutor paxdiablo
brauchen Sie nur zu verwenden mit dem Wert[0] und gibt den ersten char.
InformationsquelleAutor Luis Tellez