C++控制台输出文字问题

string s;
cin>>s;
cout<<s;
如果我输入的是汉字(在控制台下切换中文输入法),输出的s也是汉字串。
我不明白为什么控制台能够输入输出汉字????
汉字应该是编码在一个文件里,每个汉字有自己的编码对吧,代表一个点阵图,但是控制台不是默认只能显示ASCII里的字符吗?
和unicode有关系吗?
重点是输入输出汉字这个过程是怎么实现的?

第1个回答  2011-05-20
你把问题复杂化了,其实没那么复杂的. 就是声明一个string字符串变量,cin和cout是程序里提供的输入和输出的函数吧.无论你输入的是什么输出的都是你输入的字符串. 如果你把这个变量string s强制转换成int型 ,再输出看看,可能输出的就是ASCII码的码值了,以前我好像这么试过. 挺有意思的.
汉字应该是编码在一个文件里,每个汉字有自己的编码.对的.好像确实有这回事!
第2个回答  2011-05-20
为什么你会觉得控制台只能显示ASCII字符呢?
这个跟你用的什么控制台程序有关吧,一般都是能自动识别的吧。
你自己打开cmd.exe然后右键单击标题栏点属性看看本回答被提问者采纳
第3个回答  2011-05-20
简单的是command,控制台都多少年了,它还是win2000以后才有的,有你想的那么弱智吗~~
相似回答