I have a Win32 C++ Application which supports UNICODE. I have a problem where I am using the itoa() function but I get a compile error because I am passing a TCHAR* as the parameter instead of a char*.
What can I do to make it work?
TCHAR buf[32];
itoa( taskState, buf, 10 );
There is no good reason to us
TCHARunless you’re targeting Windows 9x with MFC in DLL, and you’re sort of afraid to rebuild MFC. Just usewchar_t.Then read Microsoft’s documentation of
itoa.There you find at least one variant that you can use with a
wchar_tstring.It’s generally not a good idea to use
itoafamily, but you’re at the stage where you have not yet learned to look up the documentation.So, that’s what you should do: check the documentation (and yes, I have checked, and it is there).
Addendum, as of April 2015: Since mid 2011 we’ve had the C++11 and C++14 standards ratified, and compilers now commonly support the C++11
std::towstringfunction from the<string>header; it’s just as convenient asitoaand more safe.