| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4323 人关注过本帖
标题:C++程序中CString显示是乱码!
取消只看楼主 加入收藏
theblur
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-8-29
收藏
 问题点数:0 回复次数:2 
C++程序中CString显示是乱码!
刚开始用VC2005,感觉很陌生,很多问题莫名其妙,首先在win32控制台程序里能够输出显示的字符串类型只有const char *,CString输出了奇怪的16进制码,我的测试程序如下:
  ----------------------------
  #include "stdafx.h"
  #include <iostream>
  #include <string>
  
  #define _AFXDLL
  
  #include <afx.h>
  
  
  using namespace std;
  
  
  int _tmain(int argc, _TCHAR* argv[])
  {
  
   CString cstring_str = "Hello!"; //CString
   cout << cstring_str << " " << "cstring" << endl
   <<"Input any integer continue..." << endl;
   int n; //display delay
   cin >> n;
  }
  ----------------------------
   程序未报错,但CString的输出是乱码,只有char能输出,为何?
搜索更多相关主题的帖子: CString 乱码 
2006-08-29 06:18
theblur
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-8-29
收藏
得分:0 
谢谢大家,不管怎么说,用printf("%ls", cstring_str)的确解决问题了。但是我在网上看到的都是用cout来输出的,比如MSDN的文章,其中的字符串都用cout或wcout输出:
http://msdn2.microsoft.com/en-us/library/ms235631.aspx
是不是跟Unicode编码有关?还是?奇怪呢。
2006-08-30 08:28
theblur
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-8-29
收藏
得分:0 
这样CString就可以用cout输出了?
http://msdn2.microsoft.com/en-us/library/ms235631.aspx里面的CSring输出没有用特殊的赋值和转换,直接用cout输出了,我就实现不了。用的库不对?
2006-09-01 01:52
快速回复:C++程序中CString显示是乱码!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.061149 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved