String Win32开发-C++;
我打算从Win32应用程序开发开始。我还没来得及看到第一个窗口,就准备放弃了!在编写简单的WinMain和WndProc之前,您需要了解的数据类型数量之多让我不知所措。(当然,除非你复制粘贴!) 尤其是: LPSTR LPCSTR LPWSTR LPCWSTR 有人能给我指出一篇关于Win32编程的文章吗?我应该知道哪些,在什么情况下需要哪些,何时使用Unicode,什么是多字节字符集,以及所有相关的东西 在调用Win32 API函数时,将这些数据类型转换为char*和char[]等等是一件痛苦的事情 这一切太令人困惑了String Win32开发-C++;,string,winapi,pointers,types,character-encoding,String,Winapi,Pointers,Types,Character Encoding,我打算从Win32应用程序开发开始。我还没来得及看到第一个窗口,就准备放弃了!在编写简单的WinMain和WndProc之前,您需要了解的数据类型数量之多让我不知所措。(当然,除非你复制粘贴!) 尤其是: LPSTR LPCSTR LPWSTR LPCWSTR 有人能给我指出一篇关于Win32编程的文章吗?我应该知道哪些,在什么情况下需要哪些,何时使用Unicode,什么是多字节字符集,以及所有相关的东西 在调用Win32 API函数时,将这些数据类型转换为char*和char[]等等是一件痛苦
感谢您的帮助。模式相对简单: LPSTR=字符的以零结尾的字符串 LPCSTR=常量
字符的以零结尾的字符串(C==常量)
LPWSTR=以零结尾的wchar\u t
字符串(W==宽字符)
LPCWSTR=恒定的以零结尾的字符串(C和W)
有关详细信息和说明,请参见
链接文章还包含在应用程序中何时使用Unicode以及何时不使用Unicode的建议 +1-嘿,刚刚看了一眼这篇文章。看起来它回答了我的很多字符串/字符集问题。谢谢!:)不客气。是的,一开始这很可笑,但过了一段时间后就有了某种意义。经历它。。。就好像那篇文章是定做的!:)别忘了BSTR、\u wchar\u t或许多包装类:CComBstr、CString、CAtlString、STL::String、\u BSTR\t。关于C++最好的事情是编写自己的字符串实现;好吧,你让我头晕目眩…根据你工作的平台,你通常只需要一两个。对于windows开发,我最终使用的大部分都是CString和bstr。