.NET developers are blessed by not having to care about the joys of character representation on Win32-based platforms – while most other OSses (e.g. Palm OS) are limited to single-byte chars, our friends at M$’s have cooked up a variety of different types including Unicode.
One resource I personally found extremely useful was Michael Dunn’s two-part tutorial. It starts by looking at the memory representation of “advanced” strings, and ends at string conversions – find it at CodeProject’s:
The Complete Guide to C++ Strings, Part I – Win32 Character Encodings
The Complete Guide to C++ Strings, Part II – String Wrapper Classes
Microsoft’s MSDN unfortunately is very confusing when it comes to strings. Nevertheless, the Win32′s String Chapter contains a few useful articles (hidden under UI…as if anyone would look there) – hit the URL below for the full scoop:
Unicode in the Windows API