sólo tiene que utilizar esto:
static wchar_t* charToWChar(const char* text)
{
const size_t size = strlen(text) + 1;
wchar_t* wText = new wchar_t[size];
mbstowcs(wText, text, size);
return wText;
}
No se olvide de llamar delete [] wCharPtr
en el resultado devuelto cuando estás hecho, de lo contrario, esta es una pérdida de memoria esperando a suceder si continúa llamando esto sin limpieza. O use un puntero inteligente como sugiere el comentario siguiente.
O utilizar cadenas estándar, como los siguientes:
#include <cstdlib>
#include <cstring>
#include <string>
static std::wstring charToWString(const char* text)
{
const size_t size = std::strlen(text);
std::wstring wstr;
if (size > 0) {
wstr.resize(size);
std::mbstowcs(&wstr[0], text, size);
}
return wstr;
}
Usted debe vincular a su fuente: http://msdn.microsoft.com/en-us/library/ms235631%28VS.80%29. aspx –
Gracias. Probablemente debería vincular a google también :) –
Esta es la respuesta perfecta – pradeep