   char* to wchar_t* conversion
  I'm trying to get some text from Lua to C++ (VC8 Express) to Irrlicht, but it's not going very well.  The problem is that Lua returns null-terminated char*, but Irrlicht will only take wchar_t* in most of its functions.I tried using std::stringstream to convert, but that functionality was strangely absent.  I thought wchar_t was a built-in type for C++ at this point, but I can't find any way of casting from char* to wchar_t* or std::string to std::wstring.So, then I fell back on the mbtowc function in stdlib.h, even though I'd like to avoid pointer-oriented functions (That is so C [wink]).  I believe I'm using it correctly, but when I pass the wchar_t* to IrrlichtDevice::setWindowCaption(wchar_t*), only the first letter shows up correctly, followed by 28 question marks.  For reference, the caption I'm trying to set from Lua is 21 characters long.const char* charCaption = lua_tostring(pLua, -1)wchar_t* wideCaption = new wchar_t[strlen(charCaption) + 1];mbtowc(wideCaption, charCaption, strlen(charCaption) + 1);pIrrlichtDevice->setWindowCaption(wideCaption);What do you think?  Do I suck at wide characters, or am I missing something?  Thanks for your help in advance.P.S.  I think I'll be heading off to bed soon, so I'll try to get back here as soon as possible tomorrow.   
  I think you want the mbstowcs() function instead.   