社区
C++ 语言
帖子详情
c++中的wchar_t
vogue1987
2009-04-15 06:19:25
#include <iostream>
int main()
{
wchar_t ch = '刘';
std::cout << ch << std::endl;
std::cin >> ch;
}
上边红色代码编译不过,为什么?
如果wchar_t换成char类型便可以编译过。
另外蓝色代码为什么输出的不是“刘”,而是“49653”?
谢谢各位了
...全文
243
12
打赏
收藏
c++中的wchar_t
#include int main() { wchar_t ch = '刘'; std::cout << ch <> ch; } 上边红色代码编译不过,为什么? 如果wchar_t换成char类型便可以编译过。 另外蓝色代码为什么输出的不是“刘”,而是“49653”? 谢谢各位了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
vogue1987
2009-04-18
打赏
举报
回复
谢谢各位,我再试试
adventurelw
2009-04-16
打赏
举报
回复
up一下
试了一下
用wcout.imbue(locale("chs"))仍然输不出内容。
用加L的方法也输不出。。。。。。。
vs2005.
期待!
中才德创
2009-04-15
打赏
举报
回复
up
fairchild811
2009-04-15
打赏
举报
回复
学习,unicode
whillcoxdennis
2009-04-15
打赏
举报
回复
学习了
loud1984
2009-04-15
打赏
举报
回复
[Quote=引用楼主 vogue1987 的帖子:]
#include <iostream>
int main()
{
wchar_t ch = '刘';
std::cout < < ch < < std::endl;
std::cin >> ch;
}
上边红色代码编译不过,为什么?
如果wchar_t换成char类型便可以编译过。
另外蓝色代码为什么输出的不是“刘”,而是“49653”?
谢谢各位了
[/Quote]要加L,wchar_t ch = L'刘',还是wchar_t ch = '刘'L,记不清除了,你试试应该就好了。
operatingtuzi
2009-04-15
打赏
举报
回复
wcout.imbue(locale("chs"));
wcout< < ch < < std::endl;
wcin >> ch;
ericming200409
2009-04-15
打赏
举报
回复
顶
猫已经找不回了
2009-04-15
打赏
举报
回复
用wcout输出wchar_t类型的时候,如果wchar_t变量内容为中文字符串时,wcout没有输出任何字符,想到可能是字符编码与wcout默认的字符编码不一致的问题,后经过设置或转换wchar_t类型变量后,输出正常。方法如下:
设置wcout的本地化属性: cout.imbue(locale("chs"));
也可以使用ATL转换宏:cout << W2A(wsComInfo) << endl;
「已注销」
2009-04-15
打赏
举报
回复
用wcin和wcout
jackyjkchen
2009-04-15
打赏
举报
回复
用wcout和wcin……恶心的宽字
「已注销」
2009-04-15
打赏
举报
回复
wchar_t ch = '刘';
改成
wchar_t ch = L'刘';
C++
中
的w
char
_t数据类型
标准里面是这样解释的: Wide
char
acter 宽字节字符 Type whose range of values can represent distinct codes for all members of the largest extended
char
acter set specified among the supported locales. In
C++
, w
char
_...
C++
中
的两种字符类型 w
char
_t VS
char
众所周知,
C++
中
的字符分成两种类型:w
char
_t和
char
。其
中
,W
CHAR
对应 w
char
_t,
CHAR
对应
char
,T
CHAR
是一种条件编译的类型,根据条件动态代表 w
char
_t 或者
char
。
C/
C++
线程与多线程工作笔记0005---c/
c++
中
的w
char
_t类型
技术交流QQ群【JAVA,
C++
,Python,.NET,BigData,AI】:170933152 #include <iostream> #include <locale> //setlocale函数在locale头文件
中
定义 using namespace std; int main() { //使用setlocale函数将本机的语言设置为
中
文简体 //LC_ALL表示设置所有的选项(包括金融货币、小数点,时间日期格式、语言字符串的使用习惯等),ch
C++
中
的
char
类型和w
char
_t类型的互转
1.w
char
_t转化
char
//w
char
_t转换
char
int iSize;
char
* pszMultiByte; //返回接受字符串所需缓冲区的大小,已经包含字符结尾符'\0' iSize = Wide
Char
ToMultiByte(CP_ACP, 0, info[i].szProtocol, -1, NULL, 0, NULL, NULL); //iSize =wcslen...
C++
代码
中
的字符集问题:
char
和w
char
_t
在前一篇的文章
中
,碰到的一个坑就是因为要躲开MFC
中
的一个CString类导致的各种问题。话说回来,在
C++
的程序
中
,各种各样的字符类型处理也是一个比较麻烦的事情,特别是处理的文本里面有
中
文的时候。在这个
C++
和CEF的系列
中
,就花一些篇幅来说说
C++
程序
中
的一些字符类型和相关的处理。今天先从最基本的字符集开始。我觉得在字符类型处理过程
中
,最重要的一点就是要区分两个概念:字符集和字符编码规则,这两个概念有时会混在一起用,但实际上是有区别的。
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章