关于用wcout输出字符串人问题

cwbcwb505 2011-07-09 03:14:59

#include "stdafx.h"
#include <iostream>

#ifdef _UNICODE
#define mycout std::wcout
#else
#define mycout std::cout
#endif

int _tmain(int argc, _TCHAR* argv[])
{
TCHAR* pchar = _T("我了个去");
TCHAR aa[50];
_tcscpy_s(aa, 50, pchar);
mycout << aa << endl;
return 0;
}


请问是怎么回事啊?在unicode环境下没有输出,但在多字节环境下有输出?
...全文
59 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
至善者善之敌 2011-07-09
  • 打赏
  • 举报
回复
上面
wcout改成mycout结果正常。。。
至善者善之敌 2011-07-09
  • 打赏
  • 举报
回复

using namespace std;

#ifdef _UNICODE
#define mycout std::wcout
#else
#define mycout std::cout
#endif

int _tmain(int argc, _TCHAR* argv[])
{
std::wcout.imbue(std::locale("chs"));//这里 和上午的问题差不多
TCHAR* pchar = _T("我了个去");
TCHAR aa[50];
_tcscpy_s(aa, 50, pchar);
wcout << aa << endl;
return 0;
}


http://hi.baidu.com/bevan_007/blog/item/a1f1798b173cd5dafd1f105c.html

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧