C++ 了解C样式字符串和CString上的字符串转换宏和字符串类型转换
我目前在Visual Studio的MFC应用程序部门工作。我主要使用字符串来记录和调试,它可能包含中文字符。所以默认情况下我总是使用Unicode字符集。而输出例程,无论是输出窗口还是文本文件,通常都围绕C风格的字符串、CString和ostringsteam展开。虽然我读过unicode编码,也知道unicode或_unicode标识符是如何工作的。对于C风格的字符串和CString是如何存储、转换和输出的,我仍然很困惑 初始问题 注:“请按任意键继续. . ." 中文为“按任意键继续…” 我从结果中得出以下假设和问题: 假设:C++ 了解C样式字符串和CString上的字符串转换宏和字符串类型转换,c++,unicode,casting,c-strings,ostringstream,C++,Unicode,Casting,C Strings,Ostringstream,我目前在Visual Studio的MFC应用程序部门工作。我主要使用字符串来记录和调试,它可能包含中文字符。所以默认情况下我总是使用Unicode字符集。而输出例程,无论是输出窗口还是文本文件,通常都围绕C风格的字符串、CString和ostringsteam展开。虽然我读过unicode编码,也知道unicode或_unicode标识符是如何工作的。对于C风格的字符串和CString是如何存储、转换和输出的,我仍然很困惑 初始问题 注:“请按任意键继续. . ." 中文为“按任意键继续…”
65. LPWSTR = CT2W(myStr): 请按任意键继续. . .
LPCWSTR myStr = _T("你好吗?");//How are you?
LPCWSTR myStr = _T("How are you?");
CString myCStr = myStr;
LPCWSTR myLPCWSTR0 = myStr;
LPSTR myLPSTR1 = CT2A(myStr);
LPSTR myLPSTR1_1 = CT2CA(myStr);
LPCSTR myLPCSTR1 = CT2CA(myStr);
LPCSTR myLPCSTR1_1 = CT2A(myStr);
LPWSTR myLPWSTR1 = CT2W(myStr);
LPCWSTR myLPCWSTR1 = CT2CW(myStr);
LPCWSTR myLPCWSTR1_1 = CT2W(myStr);
LPCWSTR myLPCWSTR2 = myCStr;
LPSTR myLPSTR3 = CT2A(myCStr);
LPSTR myLPSTR3_1 = CT2CA(myCStr);
LPCSTR myLPCSTR3 = CT2CA(myCStr);
LPCSTR myLPCSTR3_1 = CT2A(myCStr);
LPWSTR myLPWSTR3 = CT2W(myCStr);
LPCWSTR myLPCWSTR3 = CT2CW(myCStr);
LPCWSTR myLPCWSTR3_1 = CT2W(myCStr);
std::cout << endl << "*********Following is cout:********" << endl;
std::cout << "1. "<< "myStr: " << myStr << " wcslen: " << wcslen(myStr) << " sizeof: " << sizeof(myStr) << endl;
std::cout << "2. "<< "(LPCWSTR)myStr: " << (LPCWSTR)myStr << " wcslen: " << wcslen((LPCWSTR)myStr) << " sizeof: " << sizeof((LPCWSTR)myStr) << endl;
std::cout << "3. "<< "LPCWSTR = myStr: " << myLPCWSTR0 << " wcslen: " << wcslen(myLPCWSTR0) << " sizeof: " << sizeof(myLPCWSTR0) << endl;
std::cout << "4. "<< "(LPSTR)myStr: " << (LPSTR)myStr << " strlen: " << strlen((LPSTR)myStr) << " sizeof: " << sizeof((LPSTR)myStr) << endl;
std::cout << "5. "<< "(LPCSTR)myStr: " << (LPCSTR)myStr << " strlen: " << strlen((LPCSTR)myStr) << " sizeof: " << sizeof((LPCSTR)myStr) << endl;
std::cout << endl;
std::cout << "6. "<< "CT2CA(myStr): " << CT2CA(myStr) << " strlen: " << strlen(CT2CA(myStr)) << " sizeof: " << sizeof(CT2CA(myStr)) << endl;
std::cout << "7. "<< "CT2A(myStr): " << CT2A(myStr) << " strlen: " << strlen(CT2A(myStr)) << " sizeof: " << sizeof(CT2A(myStr)) << endl;
std::cout << "8. "<< "CT2W(myStr): " << CT2W(myStr) << " wcslen: " << wcslen(CT2W(myStr)) << " sizeof: " << sizeof(CT2W(myStr)) << endl;
std::cout << "9. "<< "CT2CW(myStr): " << CT2CW(myStr) << " wcslen: " << wcslen(CT2CW(myStr)) << " sizeof: " << sizeof(CT2CW(myStr)) << endl;
std::cout << endl;
std::cout << "10. "<< "(LPSTR)CT2A(myStr): " << (LPSTR)CT2A(myStr) << " strlen: " << strlen((LPSTR)CT2A(myStr)) << " sizeof: " << sizeof((LPSTR)CT2A(myStr)) << endl;
std::cout << "11. "<< "(LPSTR)CT2CA(myStr): " << (LPSTR)CT2CA(myStr) << " strlen: " << strlen((LPSTR)CT2CA(myStr)) << " sizeof: " << sizeof((LPSTR)CT2CA(myStr)) << endl;
std::cout << "12. "<< "(LPCSTR)CT2CA(myStr): " << (LPCSTR)CT2CA(myStr) << " strlen: " << strlen((LPCSTR)CT2CA(myStr)) << " sizeof: " << sizeof((LPCSTR)CT2CA(myStr)) << endl;
std::cout << "13. "<< "(LPCSTR)CT2A(myStr): " << (LPCSTR)CT2A(myStr) << " strlen: " << strlen((LPCSTR)CT2A(myStr)) << " sizeof: " << sizeof((LPCSTR)CT2A(myStr)) << endl;
std::cout << "14. "<< "(LPWSTR)CT2W(myStr): " << (LPWSTR)CT2W(myStr) << " wcslen: " << wcslen((LPWSTR)CT2W(myStr)) << " sizeof: " << sizeof((LPWSTR)CT2W(myStr)) << endl;
std::cout << "15. "<< "(LPCWSTR)CT2CW(myStr): " << (LPCWSTR)CT2CW(myStr) << " wcslen: " << wcslen((LPCWSTR)CT2CW(myStr)) << " sizeof: " << sizeof((LPCWSTR)CT2CW(myStr)) << endl;
std::cout << "16. "<< "(LPCWSTR)CT2W(myStr): " << (LPCWSTR)CT2W(myStr) << " wcslen: " << wcslen((LPCWSTR)CT2W(myStr)) << " sizeof: " << sizeof((LPCWSTR)CT2W(myStr)) << endl;
std::cout << endl;
std::cout << "17. "<< "LPSTR = CT2A(myStr): " << myLPSTR1 << " strlen: " << strlen(myLPSTR1) << " sizeof: " << sizeof(myLPSTR1) << endl;
std::cout << "18. "<< "LPSTR = CT2CA(myStr): " << myLPSTR1_1 << " strlen: " << strlen(myLPSTR1_1) << " sizeof: " << sizeof(myLPSTR1_1) << endl;
std::cout << "19. "<< "LPCSTR = CT2CA(myStr): " << myLPCSTR1 << " strlen: " << strlen(myLPCSTR1) << " sizeof: " << sizeof(myLPCSTR1) << endl;
std::cout << "20. "<< "LPCSTR = CT2A(myStr): " << myLPCSTR1_1 << " strlen: " << strlen(myLPCSTR1_1) << " sizeof: " << sizeof(myLPCSTR1_1) << endl;
std::cout << "21. "<< "LPWSTR = CT2W(myStr): " << myLPWSTR1 << " wcslen: " << wcslen(myLPWSTR1) << " sizeof: " << sizeof(myLPWSTR1) << endl;
std::cout << "22. "<< "LPCWSTR = CT2CW(myStr): " << myLPCWSTR1 << " wcslen: " << wcslen(myLPCWSTR1) << " sizeof: " << sizeof(myLPCWSTR1) << endl;
std::cout << "23. "<< "LPCWSTR = CTCW(myStr): " << myLPCWSTR1_1 << " wcslen: " << wcslen(myLPCWSTR1_1) << " sizeof: " << sizeof(myLPCWSTR1_1) << endl;
std::cout << endl;
std::cout << endl;
std::cout << "24. "<< "myCStr: " << myCStr << " wcslen: " << wcslen(myCStr) << " sizeof: " << sizeof(myCStr) << endl;
std::cout << "25. "<< "(LPCWSTR)myCStr: " << (LPCWSTR)myCStr << " wcslen: " << wcslen((LPCWSTR)myCStr) << " sizeof: " << sizeof((LPCWSTR)myCStr) << endl;
std::cout << "26. "<< "LPCWSTR = myCStr: " << myLPCWSTR2 << " wcslen: " << wcslen(myLPCWSTR1) << " sizeof: " << sizeof(myLPCWSTR1) << endl;
std::cout << endl;
std::cout << "27. "<< "CT2A(myCStr): " << CT2A(myCStr) << " strlen: " << strlen(CT2A(myCStr)) << " sizeof: " << sizeof(CT2A(myCStr)) << endl;
std::cout << "28. "<< "CT2CA(myCStr): " << CT2CA(myCStr) << " strlen: " << strlen(CT2CA(myCStr)) << " sizeof: " << sizeof(CT2CA(myCStr)) << endl;
std::cout << "29. "<< "CT2W(myCStr): " << CT2W(myCStr) << " strlen: " << wcslen(CT2W(myCStr)) << " sizeof: " << sizeof(CT2W(myCStr)) << endl;
std::cout << "30. "<< "CT2CW(myCStr): " << CT2CW(myCStr) << " strlen: " << wcslen(CT2CW(myCStr)) << " sizeof: " << sizeof(CT2CW(myCStr)) << endl;
std::cout << endl;
std::cout << "31. "<< "(LPSTR)CT2CA(myCStr): " << (LPSTR)CT2A(myCStr) << " strlen: " << strlen((LPSTR)CT2A(myCStr)) << " sizeof: " << sizeof((LPSTR)CT2A(myCStr)) << endl;
std::cout << "32. "<< "(LPSTR)CT2CA(myCStr): " << (LPSTR)CT2A(myCStr) << " strlen: " << strlen((LPSTR)CT2A(myCStr)) << " sizeof: " << sizeof((LPSTR)CT2A(myCStr)) << endl;
std::cout << "33. "<< "(LPCSTR)CT2CA(myCStr): " << (LPCSTR)CT2CA(myCStr) << " strlen: " << strlen((LPCSTR)CT2CA(myCStr)) << " sizeof: " << sizeof((LPCSTR)CT2CA(myCStr)) << endl;
std::cout << "34. "<< "(LPCSTR)CT2CA(myCStr): " << (LPCSTR)CT2CA(myCStr) << " strlen: " << strlen((LPCSTR)CT2CA(myCStr)) << " sizeof: " << sizeof((LPCSTR)CT2CA(myCStr)) << endl;
std::cout << "35. "<< "(LPWSTR)CT2W(myCStr): " << (LPWSTR)CT2W(myCStr) << " wcslen: " << wcslen((LPWSTR)CT2W(myCStr)) << " sizeof: " << sizeof((LPWSTR)CT2W(myCStr)) << endl;
std::cout << "36. "<< "(LPCWSTR)CT2CW(myCStr): " << (LPCWSTR)CT2CW(myCStr) << " wcslen: " << wcslen((LPCWSTR)CT2CW(myCStr)) << " sizeof: " << sizeof((LPCWSTR)CT2CW(myCStr)) << endl;
std::cout << "37. "<< "(LPCWSTR)CT2W(myCStr): " << (LPCWSTR)CT2W(myCStr) << " wcslen: " << wcslen((LPCWSTR)CT2W(myCStr)) << " sizeof: " << sizeof((LPCWSTR)CT2W(myCStr)) << endl;
std::cout << "38. "<< "LPSTR = CT2A(myCStr): " << myLPSTR3 << " strlen: " << strlen(myLPCSTR3) << " sizeof: " << sizeof(myLPCSTR3) << endl;
std::cout << "39. "<< "LPSTR = CT2CA(myCStr): " << myLPSTR3_1 << " strlen: " << strlen(myLPCSTR3_1) << " sizeof: " << sizeof(myLPCSTR3_1) << endl;
std::cout << "40. "<< "LPCSTR = CT2CA(myCStr): " << myLPCSTR3 << " strlen: " << strlen(myLPCSTR3) << " sizeof: " << sizeof(myLPCSTR3) << endl;
std::cout << "41. "<< "LPCSTR = CT2A(myCStr): " << myLPCSTR3_1 << " strlen: " << strlen(myLPCSTR3_1) << " sizeof: " << sizeof(myLPCSTR3_1) << endl;
std::cout << "42. "<< "LPWSTR = CT2W(myCStr): " << myLPWSTR3 << " wcslen: " << wcslen(myLPCWSTR3) << " sizeof: " << sizeof(myLPCWSTR3) << endl;
std::cout << "43. "<< "LPCWSTR = CT2CW(myCStr): " << myLPCWSTR3 << " wcslen: " << wcslen(myLPCWSTR3) << " sizeof: " << sizeof(myLPCWSTR3) << endl;
std::cout << "44. "<< "LPCWSTR = CT2W(myCStr): " << myLPCWSTR3_1 << " wcslen: " << wcslen(myLPCWSTR3_1) << " sizeof: " << sizeof(myLPCWSTR3_1) << endl;
std::wcout << endl << "*********Following is wcout:********" << endl;
std::wcout << "45. "<< "myStr: " << myStr << " wcslen: " << wcslen(myStr) << " sizeof: " << sizeof(myStr) << endl;
std::wcout << "46. "<< "(LPCWSTR)myStr: " << (LPCWSTR)myStr << " wcslen: " << wcslen((LPCWSTR)myStr) << " sizeof: " << sizeof((LPCWSTR)myStr) << endl;
std::wcout << "47. "<< "LPCWSTR = myStr: " << myLPCWSTR0 << " wcslen: " << wcslen(myLPCWSTR0) << " sizeof: " << sizeof(myLPCWSTR0) << endl;
std::wcout << "48. "<< "(LPSTR)myStr: " << (LPSTR)myStr << " strlen: " << strlen((LPSTR)myStr) << " sizeof: " << sizeof((LPSTR)myStr) << endl;
std::wcout << "49. "<< "(LPCSTR)myStr: " << (LPCSTR)myStr << " strlen: " << strlen((LPCSTR)myStr) << " sizeof: " << sizeof((LPCSTR)myStr) << endl;
std::wcout << endl;
std::wcout << "50. "<< "CT2CA(myStr): " << CT2CA(myStr) << " strlen: " << strlen(CT2CA(myStr)) << " sizeof: " << sizeof(CT2CA(myStr)) << endl;
std::wcout << "51. "<< "CT2A(myStr): " << CT2A(myStr) << " strlen: " << strlen(CT2A(myStr)) << " sizeof: " << sizeof(CT2A(myStr)) << endl;
std::wcout << "52. "<< "CT2W(myStr): " << CT2W(myStr) << " wcslen: " << wcslen(CT2W(myStr)) << " sizeof: " << sizeof(CT2W(myStr)) << endl;
std::wcout << "53. "<< "CT2CW(myStr): " << CT2CW(myStr) << " wcslen: " << wcslen(CT2CW(myStr)) << " sizeof: " << sizeof(CT2CW(myStr)) << endl;
std::wcout << endl;
std::wcout << "54. "<< "(LPSTR)CT2A(myStr): " << (LPSTR)CT2A(myStr) << " strlen: " << strlen((LPSTR)CT2A(myStr)) << " sizeof: " << sizeof((LPSTR)CT2A(myStr)) << endl;
std::wcout << "55. "<< "(LPSTR)CT2CA(myStr): " << (LPSTR)CT2CA(myStr) << " strlen: " << strlen((LPSTR)CT2CA(myStr)) << " sizeof: " << sizeof((LPSTR)CT2CA(myStr)) << endl;
std::wcout << "56. "<< "(LPCSTR)CT2CA(myStr): " << (LPCSTR)CT2CA(myStr) << " strlen: " << strlen((LPCSTR)CT2CA(myStr)) << " sizeof: " << sizeof((LPCSTR)CT2CA(myStr)) << endl;
std::wcout << "57. "<< "(LPCSTR)CT2A(myStr): " << (LPCSTR)CT2A(myStr) << " strlen: " << strlen((LPCSTR)CT2A(myStr)) << " sizeof: " << sizeof((LPCSTR)CT2A(myStr)) << endl;
std::wcout << "58. "<< "(LPWSTR)CT2W(myStr): " << (LPWSTR)CT2W(myStr) << " wcslen: " << wcslen((LPWSTR)CT2W(myStr)) << " sizeof: " << sizeof((LPWSTR)CT2W(myStr)) << endl;
std::wcout << "59. "<< "(LPCWSTR)CT2CW(myStr): " << (LPCWSTR)CT2CW(myStr) << " wcslen: " << wcslen((LPCWSTR)CT2CW(myStr)) << " sizeof: " << sizeof((LPCWSTR)CT2CW(myStr)) << endl;
std::wcout << "60. "<< "(LPCWSTR)CT2W(myStr): " << (LPCWSTR)CT2W(myStr) << " wcslen: " << wcslen((LPCWSTR)CT2W(myStr)) << " sizeof: " << sizeof((LPCWSTR)CT2W(myStr)) << endl;
std::wcout << endl;
std::wcout << "61. "<< "LPSTR = CT2A(myStr): " << myLPSTR1 << " strlen: " << strlen(myLPSTR1) << " sizeof: " << sizeof(myLPSTR1) << endl;
std::wcout << "62. "<< "LPSTR = CT2CA(myStr): " << myLPSTR1_1 << " strlen: " << strlen(myLPSTR1_1) << " sizeof: " << sizeof(myLPSTR1_1) << endl;
std::wcout << "63. "<< "LPCSTR = CT2CA(myStr): " << myLPCSTR1 << " strlen: " << strlen(myLPCSTR1) << " sizeof: " << sizeof(myLPCSTR1) << endl;
std::wcout << "64. "<< "LPCSTR = CT2A(myStr): " << myLPCSTR1_1 << " strlen: " << strlen(myLPCSTR1_1) << " sizeof: " << sizeof(myLPCSTR1_1) << endl;
/*std::wcout << "65. "<< "LPWSTR = CT2W(myStr): " << myLPWSTR1 << " wcslen: " << wcslen(myLPWSTR1) << " sizeof: " << sizeof(myLPWSTR1) << endl;*/
std::wcout << "66. "<< "LPCWSTR = CT2CW(myStr): " << myLPCWSTR1 << " wcslen: " << wcslen(myLPCWSTR1) << " sizeof: " << sizeof(myLPCWSTR1) << endl;
/*std::wcout << "67. "<< "LPCWSTR = CTCW(myStr): " << myLPCWSTR1_1 << " wcslen: " << wcslen(myLPCWSTR1_1) << " sizeof: " << sizeof(myLPCWSTR1_1) << endl;*/
std::wcout << endl;
std::wcout << endl;
std::wcout << "68. "<< "myCStr: " << myCStr << " wcslen: " << wcslen(myCStr) << " sizeof: " << sizeof(myCStr) << endl;
std::wcout << "69. "<< "(LPCWSTR)myCStr: " << (LPCWSTR)myCStr << " wcslen: " << wcslen((LPCWSTR)myCStr) << " sizeof: " << sizeof((LPCWSTR)myCStr) << endl;
std::wcout << "70. "<< "LPCWSTR = myCStr: " << myLPCWSTR2 << " wcslen: " << wcslen(myLPCWSTR1) << " sizeof: " << sizeof(myLPCWSTR1) << endl;
std::wcout << endl;
std::wcout << "71. "<< "CT2A(myCStr): " << CT2A(myCStr) << " strlen: " << strlen(CT2A(myCStr)) << " sizeof: " << sizeof(CT2A(myCStr)) << endl;
std::wcout << "72. "<< "CT2CA(myCStr): " << CT2CA(myCStr) << " strlen: " << strlen(CT2CA(myCStr)) << " sizeof: " << sizeof(CT2CA(myCStr)) << endl;
std::wcout << "73. "<< "CT2W(myCStr): " << CT2W(myCStr) << " strlen: " << wcslen(CT2W(myCStr)) << " sizeof: " << sizeof(CT2W(myCStr)) << endl;
std::wcout << "74. "<< "CT2CW(myCStr): " << CT2CW(myCStr) << " strlen: " << wcslen(CT2CW(myCStr)) << " sizeof: " << sizeof(CT2CW(myCStr)) << endl;
std::wcout << endl;
std::wcout << "75. "<< "(LPSTR)CT2CA(myCStr): " << (LPSTR)CT2A(myCStr) << " strlen: " << strlen((LPSTR)CT2A(myCStr)) << " sizeof: " << sizeof((LPSTR)CT2A(myCStr)) << endl;
std::wcout << "76. "<< "(LPSTR)CT2CA(myCStr): " << (LPSTR)CT2A(myCStr) << " strlen: " << strlen((LPSTR)CT2A(myCStr)) << " sizeof: " << sizeof((LPSTR)CT2A(myCStr)) << endl;
std::wcout << "77. "<< "(LPCSTR)CT2CA(myCStr): " << (LPCSTR)CT2CA(myCStr) << " strlen: " << strlen((LPCSTR)CT2CA(myCStr)) << " sizeof: " << sizeof((LPCSTR)CT2CA(myCStr)) << endl;
std::wcout << "78. "<< "(LPCSTR)CT2CA(myCStr): " << (LPCSTR)CT2CA(myCStr) << " strlen: " << strlen((LPCSTR)CT2CA(myCStr)) << " sizeof: " << sizeof((LPCSTR)CT2CA(myCStr)) << endl;
std::wcout << "79. "<< "(LPWSTR)CT2W(myCStr): " << (LPWSTR)CT2W(myCStr) << " wcslen: " << wcslen((LPWSTR)CT2W(myCStr)) << " sizeof: " << sizeof((LPWSTR)CT2W(myCStr)) << endl;
std::wcout << "80. "<< "(LPCWSTR)CT2CW(myCStr): " << (LPCWSTR)CT2CW(myCStr) << " wcslen: " << wcslen((LPCWSTR)CT2CW(myCStr)) << " sizeof: " << sizeof((LPCWSTR)CT2CW(myCStr)) << endl;
std::wcout << "81. "<< "(LPCWSTR)CT2W(myCStr): " << (LPCWSTR)CT2W(myCStr) << " wcslen: " << wcslen((LPCWSTR)CT2W(myCStr)) << " sizeof: " << sizeof((LPCWSTR)CT2W(myCStr)) << endl;
std::wcout << "82. "<< "LPSTR = CT2A(myCStr): " << myLPSTR3 << " strlen: " << strlen(myLPCSTR3) << " sizeof: " << sizeof(myLPCSTR3) << endl;
std::wcout << "83. "<< "LPSTR = CT2CA(myCStr): " << myLPSTR3_1 << " strlen: " << strlen(myLPCSTR3_1) << " sizeof: " << sizeof(myLPCSTR3_1) << endl;
std::wcout << "84. "<< "LPCSTR = CT2CA(myCStr): " << myLPCSTR3 << " strlen: " << strlen(myLPCSTR3) << " sizeof: " << sizeof(myLPCSTR3) << endl;
std::wcout << "85. "<< "LPCSTR = CT2A(myCStr): " << myLPCSTR3_1 << " strlen: " << strlen(myLPCSTR3_1) << " sizeof: " << sizeof(myLPCSTR3_1) << endl;
/*std::wcout << "86. "<< "LPWSTR = CT2W(myCStr): " << myLPWSTR3 << " wcslen: " << wcslen(myLPCWSTR3) << " sizeof: " << sizeof(myLPCWSTR3) << endl;*/
std::wcout << "87. "<< "LPCWSTR = CT2CW(myCStr): " << myLPCWSTR3 << " wcslen: " << wcslen(myLPCWSTR3) << " sizeof: " << sizeof(myLPCWSTR3) << endl;
/*std::wcout << "88. "<< "LPCWSTR = CT2W(myCStr): " << myLPCWSTR3_1 << " wcslen: " << wcslen(myLPCWSTR3_1) << " sizeof: " << sizeof(myLPCWSTR3_1) << endl;*/
*********Following is cout:********
1. myStr: 0030ADDC wcslen: 12 sizeof: 4
2. (LPCWSTR)myStr: 0030ADDC wcslen: 12 sizeof: 4
3. LPCWSTR = myStr: 0030ADDC wcslen: 12 sizeof: 4
4. (LPSTR)myStr: H strlen: 1 sizeof: 4
5. (LPCSTR)myStr: H strlen: 1 sizeof: 4
6. CT2CA(myStr): How are you? strlen: 12 sizeof: 132
7. CT2A(myStr): How are you? strlen: 12 sizeof: 132
8. CT2W(myStr): 008FED28 wcslen: 12 sizeof: 260
9. CT2CW(myStr): 0030ADDC wcslen: 12 sizeof: 4
10. (LPSTR)CT2A(myStr): How are you? strlen: 12 sizeof: 4
11. (LPSTR)CT2CA(myStr): How are you? strlen: 12 sizeof: 4
12. (LPCSTR)CT2CA(myStr): How are you? strlen: 12 sizeof: 4
13. (LPCSTR)CT2A(myStr): How are you? strlen: 12 sizeof: 4
14. (LPWSTR)CT2W(myStr): 008FE698 wcslen: 12 sizeof: 4
15. (LPCWSTR)CT2CW(myStr): 0030ADDC wcslen: 12 sizeof: 4
16. (LPCWSTR)CT2W(myStr): 008FE468 wcslen: 12 sizeof: 4
17. LPSTR = CT2A(myStr): 烫烫烫烫 strlen: 136 sizeof: 4
18. LPSTR = CT2CA(myStr): 烫烫烫烫€鴱 strlen: 139 sizeof: 4
19. LPCSTR = CT2CA(myStr): 烫烫烫烫赭? strlen: 139 sizeof: 4
20. LPCSTR = CT2A(myStr): 烫烫烫烫h鲝 strlen: 139 sizeof: 4
21. LPWSTR = CT2W(myStr): 008FF5D0 wcslen: 412 sizeof: 4
22. LPCWSTR = CT2CW(myStr): 0030ADDC wcslen: 12 sizeof: 4
23. LPCWSTR = CTCW(myStr): 008FF4B8 wcslen: 552 sizeof: 4
24. myCStr: 00A30888 wcslen: 12 sizeof: 4
25. (LPCWSTR)myCStr: 00A30888 wcslen: 12 sizeof: 4
26. LPCWSTR = myCStr: 00A30888 wcslen: 12 sizeof: 4
27. CT2A(myCStr): How are you? strlen: 12 sizeof: 132
28. CT2CA(myCStr): How are you? strlen: 12 sizeof: 132
29. CT2W(myCStr): 008FE020 strlen: 12 sizeof: 260
30. CT2CW(myCStr): 00A30888 strlen: 12 sizeof: 4
31. (LPSTR)CT2CA(myCStr): How are you? strlen: 12 sizeof: 4
32. (LPSTR)CT2CA(myCStr): How are you? strlen: 12 sizeof: 4
33. (LPCSTR)CT2CA(myCStr): How are you? strlen: 12 sizeof: 4
34. (LPCSTR)CT2CA(myCStr): How are you? strlen: 12 sizeof: 4
35. (LPWSTR)CT2W(myCStr): 008FD990 wcslen: 12 sizeof: 4
36. (LPCWSTR)CT2CW(myCStr): 00A30888 wcslen: 12 sizeof: 4
37. (LPCWSTR)CT2W(myCStr): 008FD760 wcslen: 12 sizeof: 4
38. LPSTR = CT2A(myCStr): 烫烫烫烫隔? strlen: 139 sizeof: 4
39. LPSTR = CT2CA(myCStr): 烫烫烫烫,魪 strlen: 139 sizeof: 4
40. LPCSTR = CT2CA(myCStr): 烫烫烫烫狊? strlen: 139 sizeof: 4
41. LPCSTR = CT2A(myCStr): 烫烫烫烫髲 strlen: 139 sizeof: 4
42. LPWSTR = CT2W(myCStr): 008FF17C wcslen: 12 sizeof: 4
43. LPCWSTR = CT2CW(myCStr): 00A30888 wcslen: 12 sizeof: 4
44. LPCWSTR = CT2W(myCStr): 008FF064 wcslen: 1106 sizeof: 4
*********Following is wcout:********
45. myStr: How are you? wcslen: 12 sizeof: 4
46. (LPCWSTR)myStr: How are you? wcslen: 12 sizeof: 4
47. LPCWSTR = myStr: How are you? wcslen: 12 sizeof: 4
48. (LPSTR)myStr: H strlen: 1 sizeof: 4
49. (LPCSTR)myStr: H strlen: 1 sizeof: 4
50. CT2CA(myStr): How are you? strlen: 12 sizeof: 132
51. CT2A(myStr): How are you? strlen: 12 sizeof: 132
52. CT2W(myStr): 008FD318 wcslen: 12 sizeof: 260
53. CT2CW(myStr): 0030ADDC wcslen: 12 sizeof: 4
54. (LPSTR)CT2A(myStr): How are you? strlen: 12 sizeof: 4
55. (LPSTR)CT2CA(myStr): How are you? strlen: 12 sizeof: 4
56. (LPCSTR)CT2CA(myStr): How are you? strlen: 12 sizeof: 4
57. (LPCSTR)CT2A(myStr): How are you? strlen: 12 sizeof: 4
58. (LPWSTR)CT2W(myStr): How are you? wcslen: 12 sizeof: 4
59. (LPCWSTR)CT2CW(myStr): How are you? wcslen: 12 sizeof: 4
60. (LPCWSTR)CT2W(myStr): How are you? wcslen: 12 sizeof: 4
61. LPSTR = CT2A(myStr): 烫烫烫烫 strlen: 136 sizeof: 4
62. LPSTR = CT2CA(myStr): 烫烫烫烫€鴱 strlen: 139 sizeof: 4
63. LPCSTR = CT2CA(myStr): 烫烫烫烫赭? strlen: 139 sizeof: 4
64. LPCSTR = CT2A(myStr): 烫烫烫烫h鲝 strlen: 139 sizeof: 4
66. LPCWSTR = CT2CW(myStr): How are you? wcslen: 12 sizeof: 4
68. myCStr: 00A30888 wcslen: 12 sizeof: 4
69. (LPCWSTR)myCStr: How are you? wcslen: 12 sizeof: 4
70. LPCWSTR = myCStr: How are you? wcslen: 12 sizeof: 4
71. CT2A(myCStr): How are you? strlen: 12 sizeof: 132
72. CT2CA(myCStr): How are you? strlen: 12 sizeof: 132
73. CT2W(myCStr): 008FC610 strlen: 12 sizeof: 260
74. CT2CW(myCStr): 00A30888 strlen: 12 sizeof: 4
75. (LPSTR)CT2CA(myCStr): How are you? strlen: 12 sizeof: 4
76. (LPSTR)CT2CA(myCStr): How are you? strlen: 12 sizeof: 4
77. (LPCSTR)CT2CA(myCStr): How are you? strlen: 12 sizeof: 4
78. (LPCSTR)CT2CA(myCStr): How are you? strlen: 12 sizeof: 4
79. (LPWSTR)CT2W(myCStr): How are you? wcslen: 12 sizeof: 4
80. (LPCWSTR)CT2CW(myCStr): How are you? wcslen: 12 sizeof: 4
81. (LPCWSTR)CT2W(myCStr): How are you? wcslen: 12 sizeof: 4
82. LPSTR = CT2A(myCStr): 烫烫烫烫隔? strlen: 139 sizeof: 4
83. LPSTR = CT2CA(myCStr): 烫烫烫烫,魪 strlen: 139 sizeof: 4
84. LPCSTR = CT2CA(myCStr): 烫烫烫烫狊? strlen: 139 sizeof: 4
85. LPCSTR = CT2A(myCStr): 烫烫烫烫髲 strlen: 139 sizeof: 4
87. LPCWSTR = CT2CW(myCStr): How are you? wcslen: 12 sizeof: 4
请按任意键继续. . .
65. LPWSTR = CT2W(myStr): 请按任意键继续. . .
LPCWSTR myStr = _T("你好吗?");//How are you?