none
VC中棘手的字符串问题 RRS feed

  • 问题

  • 请问,有没有什么教程可以全面的介绍VC下字符和字符串的转换方法么?感觉看到的都不怎么全面。比如wchar_t char* TCHAR CString BYTE LPWSTR 之类等等等等,如何转换是安全的可靠的正确的?非常希望有一份非常全面的教程。谢谢了


    bylh
    2010年12月22日 5:18

答案

  • wchar_t char* TCHAR CString BYTE LPWSTR 之类都不是编码方式,而是存储方式。转换方式取决于字符串的编码。

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2010年12月22日 18:53
    版主
  • 目前的VC++字符串相关类型有 char* wchar*(TCHAR是这两个类型的自动识别版本) CString(MFC), str::string(stl), BSTR,  CComBSTR ,bstr_t, LPSTR, LPCTSTR, LPWSTR, LPCWSTR。这些类型之间的转换网上都应该有转换方式。如果楼主需要,我也可以帮你总结一份。


    麻烦把正确答案设为解答。
    2010年12月23日 2:07
    版主
  • Hi Microsoft Student,

    以下这个链接很好很全面的总结了Visual C++的不同字符串类型的互相转换。涵盖的字符串类型有char *, wchar_t*, _bstr_t, CComBSTR, CString, basic_string, and System.String. 在任何情况下,当一个字符串转换成一个新的类型时就会产生一个字符串副本,任何对这个副本的的操作都会影响原来的字符串,反之亦然。

    http://msdn.microsoft.com/en-us/library/ms235631(VS.80).aspx

     

    谢谢,

    Lucy

     


    Lucy Liu [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2010年12月24日 2:31
    版主

全部回复