从C\C++\开始学编程的兄弟们确定对char这个基本类型有深入的理解。什么\0最为结束符,strlen和sizeof,字符串数组和char*的字符串,这部分基本上是学习C语言最早要面对的一个拦路虎。固然学习java、C#这些相对没有历史包袱的语言的时候,就不会感到这么坑爹了。java
实际上,对不起各位的是,char这个类型做为描述字符的载体,还有着其余的问题。咱们在下面简单说一些。(仅做为抛砖引玉,若是有什么缺陷,但愿你们不吝赐教)编程
后来,你们发现了这个问题,对于一个程序,想要全球发布,就会面临很大的问题。因此后来人们就发明了另一种码表-Unicode。顾名思义,Unicode是把世界上全部的字符,都包含进来的一个超级大的码表。Unicode的基本思想就是,个人表里面什么都有,不管在任何语言的任何系统,只要支持Unicode,就能在表里面找到想要的字符。当前Unicode使用的是UCS-2(16位的),能够容纳65535个字符,基本上也够用了。编码方式有utf-1六、utf-3二、utf-8。由于utf-8对以前的一些字符串函数兼容性更好,因此如今普遍使用的就是utf-8。数组
好了,到如今为止,咱们一共提出了ASCII、亚洲的多字符编码、Unicode三种大的编码方式。那咱们要怎么选择,以及他们相互之间要怎么切换哪?等我有时间再说。函数