关注 微信公众号 老卢私塾
ASCII美国国家信息交互标准码
0-127(7位),A是65,a是97
ISO-Latin-1
0-255(8位),前边128个仍然是ASCII 1B
以上编码处理英文足够使用了
为了处理非英文,阿拉伯,韩文,日文,中文,1B不够用,盛不下
l 所以发明了Unicode统一码,为2B,16位
现在已经能盛下世界上所有的文字,还有空余
l 现在开发更流行使用的是其变种UTF-8(Unicode Transformation Format)
UTF-8处理英文占1B,非英文占3B
Unicode处理英文占2B,非英文占2B。 所以对英文不公平,浪费了,而我们编程使用的基本都是英文。所以综合考虑,发明了UTF-8,成为了编程时必用的文字编码格式。
具体用法:
l 编码时:
C语言:
l Windows:VC++
ASNI ASCII(char)一个字符占1B
unicode编码(wchar_t)一个字符占2B(Unicode)
l Linux是(char)UTF-8编码
其中ASCII码排在Unicode/UTF-8最前面与原来的编码值不变即65还是A
l 存储文件/网络传输时
存储文件
socket: TCP/UDP 第三层网络通信协议
windows是unicode.一直在写win server
linux是utf-8. linux server
我当年就吃过个亏