The char-TCHAR-wchar_t Pendulum in Windows API Native C/C++ Programming
6 months ago
- #C++
- #Unicode
- #Win32 API
- 从Visual C++ 4开始,在Windows 95上学习用C/C++进行Windows Win32 API编程,当时使用char类型处理字符串。
- 后来转向TCHAR模型以实现ANSI/Unicode兼容,用TCHAR替代char,并使用TEXT宏。
- 最终采用Unicode(UTF-16)和wchar_t以支持国际化软件,使用L"..."表示字符串字面量,并调用CreateWindowW等API。
- 指出ANSI/MBCS(如CP-1252编码)对非西方语言的局限性,以及字符表示存在歧义的问题。
- 注意到Visual C++ 2005默认切换到Unicode(UTF-16),以及近期Windows 10在-A API中支持UTF-8的特性。