1个回答
展开全部
VC6.0默认的是ansi,区别在于ansi一个字符占一个字节,中文则占两个字节,Unicode不管中文还是字符都占两个字节
ansi字符串:char*,一个基本单元即char占一个字节
unicode字符串:wchar_t*,一个基本单元即wchar_t(也就是short)占2个字节
比如字符串:123测试
ansi字符串长度是7个字节(7个基本单元),unicode是10个字节(5个基本单元)
这两种编码应该是必须掌握的,以及两种编码的互相转换
UTF-8是个比较奇葩的东西,一般编程是不会遇到的,它里面一个中文可能会占3个字节,跟Unicode不是直接兼容的需要转换,如果是做网络编程的话可能要判断得到的编码是utf-8还是ansi的了,否则就会得到一堆乱码
ansi字符串:char*,一个基本单元即char占一个字节
unicode字符串:wchar_t*,一个基本单元即wchar_t(也就是short)占2个字节
比如字符串:123测试
ansi字符串长度是7个字节(7个基本单元),unicode是10个字节(5个基本单元)
这两种编码应该是必须掌握的,以及两种编码的互相转换
UTF-8是个比较奇葩的东西,一般编程是不会遇到的,它里面一个中文可能会占3个字节,跟Unicode不是直接兼容的需要转换,如果是做网络编程的话可能要判断得到的编码是utf-8还是ansi的了,否则就会得到一堆乱码
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询