我现在对 CHAR 字符串和 WCHAR 字符串的 WinAPI 中的匈牙利符号前缀有点困惑。当我们使用 CHAR 字符串时,通常会使用这样的前缀:
CHAR szString[] = "Hello";
我们有一个以零结尾的字符串 szString,所以一切都很好。但是当我们使用 WCHAR 字符串时,通常会使用这样的前缀:
WCHAR pwszString[] = L"Hello";
它代表指向以零结尾的宽字符串的指针......但我们的类型看起来不像这样。指向以零结尾的宽字符串的指针是 WCHAR** 或 PWSTR*。我错了吗?为什么 sz 用于 CHAR 字符串而 pwsz 而不是 wsz 用于 WCHAR 字符串?