從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三種大的編碼方式。那咱們要怎麼選擇,以及他們相互之間要怎麼切換哪?等我有時間再說。函數