C++编程中用unicode库和不用的区别?

C++编程中用unicode库和不用的区别


互换的青春
浏览 941回答 3
3回答

慕标琳琳

调用的运行库和开发库都不一样,以在windows下的VC++为例定义 Unicode,TCHAR被定义为 short,否则被定义为char;当你调用CreateFile时,使用Unicode则系统实际调用的是CreateFileW,否则是CreateFileA,对应你输入的参数,如果有字符串的,也分别输入wchar和char

忽然笑

不同的语言中的字符分别是不同的编码,存在于Unicode中的字符包括了中文在内的多个国家文字符号,用哪一个国家的符号就用到了不同段的编码。在中文的系统中显示的韩文也是韩文,在韩文系统中显示的中文也是中文。不可能说是“中国”这两个在在中国叫中国,中美国就是美国,它还叫中国。也是这样显示。但是不同语言的系统中,表示同样信息确使用了不同的编码的符号。设置一个语言为本地语言就是切换不同的编码显示类似的信息及相应的习惯,比如钱币的符号、时间的表示格式等。

繁花如伊

用MultiByteToWideChar和WideCharToMultiByte可以做到编码的转换。char和unsigned char不是一样的吗,没区别吧,无需转换?若是unicode编码的类型记得是wchar_t吧,或者用WCHAR。_T是将作用是让你的程序支持Unicode编码的,若你当前程序定义为ANSI,那么这个宏就什么都不做,若定义为unicode则将字串常量(不是变量)类型转为unicode,记得是如此,有点淡忘了,嘿。TCHAR也是个宏,ansi程序就是定义成char,unicode的时候就变成WCHAR了。
打开App,查看更多内容
随时随地看视频慕课网APP