title: C++: LPWSTR prints as an address in cout
body: <p>I have a variable of type <code>LPTSTR</code>, which I print to <code>std::cout</code> with <code>&lt;&lt;</code>. In an ANSI system (don't know exactly where it is determined) it worked fine, it printed the string. Now in a Unicode system I get a hex address instead of the string. So, why does <code>LPSTR</code> <em>(to which <code>LPTSTR</code> is resolved if <code>UNICODE</code> is not defined)</em> act differently from <code>LPWSTR</code> <em>(... if <code>UNICODE</code> is defined)</em> and how do I print the string pointed by the latter one?</p>