none
如何取把特殊字符赋值给CString? RRS feed

答案

  • 直接赋MBCS或UNICODE码;例如
    char c = 41;
    或者
    CString sz;
    sz = static_cast<char>(41);


    麻烦把正确答案设为解答。
    • 已标记为答案 scate233 2009年7月3日 8:49
    2009年6月24日 8:30
    版主
  • 好像你用的MBCS吧,UNICODE需要在工程中添加预处理宏定义。并且需要使用wchar或者TCHAR
    CString sz;
    sz = static_cast<TCHAR>(0x00b3);

     AfxMessageBox(sz);


    麻烦把正确答案设为解答。
    • 已标记为答案 scate233 2009年6月25日 6:16
    2009年6月24日 9:19
    版主

全部回复

  • MBCS和UNICODE都应该有相应的符号,查一下符号表。


    麻烦把正确答案设为解答。

    2009年6月24日 4:35
    版主
  • 有,但是怎么赋过去?
    2009年6月24日 6:12
  • 直接赋MBCS或UNICODE码;例如
    char c = 41;
    或者
    CString sz;
    sz = static_cast<char>(41);


    麻烦把正确答案设为解答。
    • 已标记为答案 scate233 2009年7月3日 8:49
    2009年6月24日 8:30
    版主
  • 我写成

    CString sz;
    sz = static_cast<char>(0x00b3);

     AfxMessageBox(sz);


    00b3 在 unicode里是立方号,但是弹出来的却是个方块

    2009年6月24日 9:06
  • 好像你用的MBCS吧,UNICODE需要在工程中添加预处理宏定义。并且需要使用wchar或者TCHAR
    CString sz;
    sz = static_cast<TCHAR>(0x00b3);

     AfxMessageBox(sz);


    麻烦把正确答案设为解答。
    • 已标记为答案 scate233 2009年6月25日 6:16
    2009年6月24日 9:19
    版主
  • 试验成功!关于Unicode那些什么“拉丁字符集1”有没有办法指定?比如我想指定要拉丁1里的0x00c2
    2009年6月24日 9:24
  • 字符串放到资源里面去,不要硬编码
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful. This posting is provided "AS IS" with no warranties, and confers no rights.
    Visual C++ MVP
    2009年6月24日 13:24
    版主
  • 字符串放到资源里面去,不要硬编码
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful. This posting is provided "AS IS" with no warranties, and confers no rights.
    Visual C++ MVP

    怎么放?把字库文件作为资源放进去还是作点阵图?
    2009年6月25日 1:39
  • 把资源dll做成satellite Dll,不同语言加载不同的DLL。
    麻烦把正确答案设为解答。
    2009年6月25日 2:33
    版主