unicode是萬能編碼,包含了所有符號的編碼,它規定了所有符號在計算機底層的二進位制的表示順序。
在utf-8編碼中乙個中文佔三個位元組
比如 漢字 "張" 對應的三位元組編碼是[229 188 160]
但是如何判斷,229 188 160 是組合的呢,這裡涉及到一套規則
utf規定:
如果乙個符號只佔乙個位元組,那麼這個8位位元組的第一位就為0。
如果為兩個位元組,那麼規定第乙個位元組的前兩位都為1,然後第乙個位元組的第三位為0,第二個位元組的前兩位為10
然後如果是三個位元組的話,那麼第乙個位元組的前三位為111,第四位為0,剩餘的兩個位元組的前兩位都為10。
所以乙個位元組最大是 011111111 轉換成十進位制是 127 如果大於127則認為不止乙個位元組
兩個位元組最大數是 11011111 10111111 轉成成十進位制分別是223 和 191
兩個位元組最大數是 11101111 10111111 10111111 轉成成十進位制分別是239 和 191 和 191
這裡設n為位元組
n<128 則為1個位元組
128223這樣可以輕鬆判斷出來是否是一組
C 之 判斷乙個字元是否是漢字
判斷乙個字元是不是漢字通常有三種方法 1 用 ascii 碼判斷 2 用漢字的 unicode 編碼範圍判斷 3 用正規表示式判斷。1 用ascii碼判斷 在 ascii碼表中,英文的範圍是0 127,而漢字則是大於127,具體 如下 string text 漢字,abc for int i 0 i...
C 之 判斷乙個字元是否是漢字
判斷乙個字元是不是漢字通常有三種方法 1 用 ascii 碼判斷 2 用漢字的 unicode 編碼範圍判斷 3 用正規表示式判斷。1 用ascii碼判斷 在 ascii碼表中,英文的範圍是0 127,而漢字則是大於127,具體 如下 string text 漢字,abc for int i 0 i...
C 中如何判斷乙個字元是漢字
判斷乙個字元是不是漢字通常有三種方法,第一種用 ascii 碼判斷,第二種用漢字的 unicode 編碼範圍判 斷,第三種用正規表示式判斷,以下是具體方法。1 用ascii碼判斷 在 ascii碼表中,英文的範圍是0 127,而漢字則是大於127,具體 如下 csharp view plain co...