Me gustaría convertir un vector<char>
en un std::string
y hacer una conversión en el camino.Convierta un vector <char> en una cadena con una conversión
Estoy casi allí, pero el resultado del código siguiente es vector<string>
, mientras que me gustaría tener una cadena (una concatenación de todas las partes de la cadena en el vector).
Vea el ejemplo de mi código para más detalles.
string ConvertHexToAscii(const char input)
{
std::ostringstream oss;
oss << std::hex << std::setw(2) << std::setfill('0') << static_cast<int>(input);
return oss.str();
}
vector<char> readBuffer; // this is my input
readBuffer.push_back(0x1c);
readBuffer.push_back(0x09);
vector<string> resultVec;
std::transform(readBuffer.begin(), readBuffer.end()
, back_inserter(resultVec)
, ConvertHexToAscii);
// resultVec[0] = "1C";
// resultVec[1] = "09";
El resultado lo que necesito es una cadena que contiene "1C09". ¿Cómo lograr eso con std::transform
?
Me gusta esto - mucho más simple que jugar con iteradores de salida de función. – Flexo