Frage C ++ konvertiert von 1 Zeichen in Zeichenfolge? [geschlossen]


Ich habe wirklich keine Antwort gefunden, die so nah ist ...

der umgekehrte Weg ist ziemlich einfach wie str [0]

Aber ich muss nur 1 Char in String streamen ...

so was:

char c = 34;
string(1,c);
//this doesn't work, the string is always empty.

string s(c);
//also doesn't work.

boost::lexical_cast<string>((int)c);

//also return null

76
2018-06-19 21:22


Ursprung


Antworten:


Alle

string s(1, c); std::cout << s << std::endl;

und

std::cout << string(1, c) << std::endl;

und

string s; s.push_back(c); std::cout << s << std::endl;

hat für mich gearbeitet.


126
2018-06-19 21:32



Ich dachte ehrlich, dass die Casting-Methode gut funktionieren würde. Da kann man Stringstream nicht ausprobieren. Ein Beispiel ist unten:

#include <sstream>
#include <string>
stringstream ss;
string target;
char mychar='a';
ss << mychar;
ss >> target;

6
2018-06-19 21:28