亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? utf-8 and unicode faq.htm

?? unicode 一些資料
?? HTM
?? 第 1 頁 / 共 2 頁
字號:
它們在 文件名和其他 C 庫函數參數里都有特別的含義. 另外, 大多數使用 ASCII 文件的 UNIX 下的工具, 如果不進行重大修改是無法讀取 16 
位的字符的. 基于這些原因, 在文件名, 文本文件, 環境變量等地方, <STRONG>UCS-2</STRONG> 不適合作為 <STRONG><B 
style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B></STRONG> 的外部編碼.</P>
<P>在 ISO 10646-1 <A 
href="http://www.cl.cam.ac.uk/~mgk25/ucs/ISO-10646-UTF-8.html">Annex R</A> 和 <A 
href="ftp://ftp.funet.fi/mirrors/nic.nordu.net/rfc/rfc2279.txt">RFC 2279</A> 
里定義的 <STRONG>UTF-8</STRONG> 編碼沒有這些問題. 它是在 Unix 風格的操作系統下使用 <B 
style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B> 的明顯的方法.</P>
<P>UTF-8 有一下特性: 
<UL>
  <LI>UCS 字符 U+0000 到 U+007F (ASCII) 被編碼為字節 0x00 到 0x7F (ASCII 兼容). 這意味著只包含 7 位 
  ASCII 字符的文件在 ASCII 和 UTF-8 兩種編碼方式下是一樣的. 
  <LI>所有 &gt;U+007F 的 UCS 字符被編碼為一個多個字節的串, 每個字節都有標記位集. 因此, ASCII 字節 (0x00-0x7F) 
  不可能作為任何其他字符的一部分. 
  <LI>表示非 ASCII 字符的多字節串的第一個字節總是在 0xC0 到 0xFD 的范圍里, 并指出這個字符包含多少個字節. 多字節串的其余字節都在 
  0x80 到 0xBF 范圍里. 這使得重新同步非常容易, 并使編碼無國界, 且很少受丟失字節的影響. 
  <LI>可以編入所有可能的 2<SUP>31</SUP>個 UCS 代碼 
  <LI>UTF-8 編碼字符理論上可以最多到 6 個字節長, 然而 16 位 BMP 字符最多只用到 3 字節長. 
  <LI>Bigendian UCS-4 字節串的排列順序是預定的. 
  <LI>字節 0xFE 和 0xFF 在 UTF-8 編碼中從未用到. </LI></UL>
<P>下列字節串用來表示一個字符. 用到哪個串取決于該字符在 <B 
style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B> 中的序號.</P>
<DIV align=center>
<CENTER>
<TABLE border=1>
  <TBODY>
  <TR>
    <TD>U-00000000 - U-0000007F: </TD>
    <TD>0<I>xxxxxxx</I> </TD></TR>
  <TR>
    <TD>U-00000080 - U-000007FF: </TD>
    <TD>110<I>xxxxx</I> 10<I>xxxxxx</I> </TD></TR>
  <TR>
    <TD>U-00000800 - U-0000FFFF: </TD>
    <TD>1110<I>xxxx</I> 10<I>xxxxxx</I> 10<I>xxxxxx</I> </TD></TR>
  <TR>
    <TD>U-00010000 - U-001FFFFF: </TD>
    <TD>11110<I>xxx</I> 10<I>xxxxxx</I> 10<I>xxxxxx</I> 10<I>xxxxxx</I> </TD></TR>
  <TR>
    <TD>U-00200000 - U-03FFFFFF: </TD>
    <TD>111110<I>xx</I> 10<I>xxxxxx</I> 10<I>xxxxxx</I> 10<I>xxxxxx</I> 
      10<I>xxxxxx</I> </TD></TR>
  <TR>
    <TD>U-04000000 - U-7FFFFFFF: </TD>
    <TD>1111110<I>x</I> 10<I>xxxxxx</I> 10<I>xxxxxx</I> 10<I>xxxxxx</I> 
      10<I>xxxxxx</I> 10<I>xxxxxx</I> </TD></TR></TBODY></TABLE></CENTER></DIV>
<P>xxx 的位置由字符編碼數的二進制表示的位填入. 越靠右的 x 具有越少的特殊意義. 只用最短的那個足夠表達一個字符編碼數的多字節串. 注意在多字節串中, 
第一個字節的開頭"1"的數目就是整個串中字節的數目.</P>
<P><STRONG>例如</STRONG>: <B 
style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B> 字符 U+00A9 = 1010 
1001 (版權符號) 在 UTF-8 里的編碼為:</P>
<BLOCKQUOTE>
  <P>11000010 10101001 = 0xC2 0xA9</P></BLOCKQUOTE>
<P>而字符 U+2260 = 0010 0010 0110 0000 (不等于) 編碼為:</P>
<BLOCKQUOTE>
  <P>11100010 10001001 10100000 = 0xE2 0x89 0xA0</P></BLOCKQUOTE>
<P>這種編碼的官方名字拼寫為 UTF-8, 其中 UTF 代表 <STRONG>U</STRONG>CS 
<STRONG>T</STRONG>ransformation <STRONG>F</STRONG>ormat. 請勿在任何文檔中用其他名字 (比如 utf8 
或 UTF_8) 來表示 UTF-8, 當然除非你指的是一個變量名而不是這種編碼本身.</P>
<H2>什么編程語言支持 <B 
style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B>?</H2>
<P>在大約 1993 年之后開發的大多數現代編程語言都有一個特別的數據類型, 叫做 <B 
style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B>/ISO 10646-1 字符. 在 
Ada95 中叫 Wide_Character, 在 Java 中叫 char.</P>
<P>ISO C 也詳細說明了處理多字節編碼和寬字符 (wide characters) 的機制, 1994 年 9 月 <A 
href="http://www.lysator.liu.se/c/na1.html">Amendment 1 to ISO C</A> 發表時又加入了更多. 
這些機制主要是為各類東亞編碼而設計的, 它們比處理 UCS 所需的要健壯得多. UTF-8 是 ISO C 標準調用多字節字符串的編碼的一個例子, 
<EM>wchar_t</EM> 類型可以用來存放 <B 
style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B> 字符.</P>
<H2>在 Linux 下該如何使用 <B 
style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B>?</H2>
<P>在 UTF-8 之前, 不同地區的 Linux 用戶使用各種各樣的 ASCII 擴展. 最普遍的歐洲編碼是 ISO 8859-1 和 ISO 
8859-2, 希臘編碼 ISO 8859-7, 俄國編碼 KOI-8, 日本編碼 EUC 和 Shift-JIS, 等等. 這使得 文件的交換非常困難, 
且應用軟件必須特別關心這些編碼的不同之處.</P>
<P>最終, <B style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B> 將取代所有這些編碼, 
主要通過 UTF-8 的形式. UTF-8 將應用在 
<UL>
  <LI>文本文件 (源代碼, HTML 文件, email 消息, 等等) 
  <LI>文件名 
  <LI>標準輸入與標準輸出, 管道 
  <LI>環境變量 
  <LI>剪切與粘貼選擇緩沖區 
  <LI>telnet, modem 和到終端模擬器的串口連接 
  <LI>以及其他地方以前用ASCII來表示的字節串 </LI></UL>
<P>在 UTF-8 模式下, 終端模擬器, 比如 xterm 或 Linux console driver, 將每次按鍵轉換成相應的 UTF-8 串, 
然后發送到前臺進程的 stdin 里. 類似的, 任何進程在 stdout 上的輸出都將發送到終端模擬器, 在那里用一個 UTF-8 解碼器進行處理, 
之后再用一種 16 位的字體顯示出來.</P>
<P>只有在功能完善的多語言字處理器包里才可能有完全的 <B 
style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B> 功能支持. 而廣泛用在 Linux 
里用于取代 ASCII 和其他 8 位字符集的方案則要簡單得多. 第一步, Linux 終端模擬器和命令行工具將只是轉變到 UTF-8. 這意味著只用到 級別1 
的 ISO 10646-1 實現 (沒有組合字符), 且只支持那些不需要更多處理的語言象 拉丁, 希臘, 斯拉夫 和許多科學用符號. 在這個級別上, UCS 
支持與 ISO 8859 支持類似, 唯一顯著的區別是現在我們有幾千種字符可以用了, 其中的字符可以用多字節串來表示.</P>
<P>總有一天 Linux 會當然地支持組合字符, 但即便如此, 對于組合字符串, 預作字符(如何可用的話)仍將是首選的. 更正式地, 在 Linux 下用 
<B style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B> 對文本編碼的首選的方法應該是定義在 
<A href="http://www.unicode.org/unicode/reports/tr15/"><B 
style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B> Technical Report 
#15</A> 里的 <EM>Normalization Form C.</EM></P>
<P>在今后的一個階段, 人們可以考慮增加在日文和中文里用到的雙字節字符的支持 (他們相對比較簡單), 組合字符支持, 甚至也許對從右至左書寫的語言如希伯來文 
(他們可不是那么簡單的) 的支持. 但對這些高級功能的支持不應該阻礙簡單的平板 UTF-8 在 拉丁, 希臘, 斯拉夫和科學用符號方面的快速應用, 
以取代大量的歐洲 8 位編碼, 并提供一個象樣的科學用符號集.</P>
<H2>我該怎樣修改我的軟件?</H2>
<P>有兩種途徑可以支持 UTF-8, 我稱之為軟轉換與硬轉換. 軟轉換時, 各處的數據均保存為 UTF-8 形式, 因而需要修改的軟件很少. 在硬轉換時, 
程序將讀入的 UTF-8 數據轉換成寬字符數組, 以在應用程序內部處理. 在輸出時, 再把字符串轉換回 UTF-8 形式.</P>
<P>大多數應用程序只用軟轉換就可以工作得很好了. 這使得將 UTF-8 引入 Unix 成為切實可行的. 例如, 象 cat 和 
<SAMP>echo</SAMP> 這樣的程序根本不需要修改. 他們仍然可以對輸入輸出的是 ISO 8859-2 還是 UTF-8 一無所知, 
因為它們只是搬運字節流而沒有處理它們. 它們只能識別 ASCII 字符和象 '\n' 這樣的控制碼, 而這在 UTF-8 下也沒有任何改變. 因此, 
這些應用程序的 UTF-8 編碼與解碼將完全在終端模擬器里完成.</P>
<P>而那些通過數字節數來獲知字符數量的程序則需要一些小修改. 在 UTF-8 模式下, 它們必須不數入 0x80 到 0xBF 范圍內的字節, 
因為這些只是跟隨字節, 它們本身并不是字符. 例如, <SAMP>ls</SAMP> 程序就必須要修改, 因為它通過數文件名中字符數來排放給用戶的目錄表格布局. 
類似地, 所有的假定其輸出為定寬字體, 并因此而格式化它們的程序, 必須學會怎樣數 UTF-8 文本中的字符數. 編輯器的功能, 如刪除單個字符, 
必須要作輕微的修改, 以刪除可能屬于該字符的所有字節. 受影響有編輯器 (<SAMP>vi,emacs</SAMP>, 等等)以及使用 
<SAMP>ncurses</SAMP> 庫的程序.</P>
<P>Linux 核心使用軟轉換也可以工作得很好, 只需要非常微小的修改以支持 UTF-8. 大多數處理字符串的核心功能 (例如: 文件名, 環境變量, 等等) 
都不受影響. 下列地方也許必須修改: 
<UL>
  <LI>控制臺顯示與鍵盤驅動程序 (另一個 VT100 模擬器) 必須能編碼和解碼 UTF-8, 必須要起碼支持 <B 
  style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B> 字符集的幾個子集. 從 Linux 
  1.2 起這些功能已經有了. 
  <LI>外部文件系統驅動程序, 例如 VFAT 和 WinNT 必須轉換文件名字符編碼. UTF-8 已經加入可用的轉換選項的列表里了, 因此 
  <SAMP>mount</SAMP> 命令必須告訴核心驅動程序用戶進程希望看到 UTF-8 文件名. 既然 VFAT 和 WinNT 無論如何至少已經用了 
  <B style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B>了, 那么 UTF-8 
  在這里就可以發揮其優勢, 以保證轉換中無信息損失. 
  <LI>POSIX 系統的 tty 驅動程序支持一種 "cooked" 模式, 有一些原始的行編輯功能. 為了讓字符刪除功能工作正常, 
  <SAMP>stty</SAMP> 必須在 tty 驅動程序里設置 UTF-8 模式, 因此它就不會把 0x80 到 0xBF 范圍內的跟隨字符也數進去了. 
  <A href="http://clisp.cons.org/~haible/">Bruno Haible</A> 那里已經有了一些 
  <SAMP>stty</SAMP> 和核心 tty 驅動 程序的 <A 
  href="ftp://ftp.ilog.fr/pub/Users/haible/utf8/">Linux 補丁 </A>了. </LI></UL>
<H2>C 對 <B style="COLOR: black; BACKGROUND-COLOR: #ffff66">Unicode</B> 和 UTF-8 
的支持</H2>
<P>從 GNU glibc 2.1 開始, <SAMP>wchar_t</SAMP> 類型已經正式定為只存放獨立于當前 locale 的, 32位的 ISO 
10646 值. glibc 2.2 開始將完全支持 ISO C 中的多字節轉換函數 (wprintf(),mbstowcs(),等等), 這些函數可以用于在 
wchar_t 和包括 UTF-8 在內的任何依賴于 locale 的多字節編碼間進行轉換.</P>
<P>例如, 你可以寫</P><PRE>  wprintf(L"Sch鰊e Gr

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美视频第二页| 国产精品国产三级国产aⅴ原创 | 久久爱另类一区二区小说| 国产成人精品影院| 欧美一级一区二区| 亚洲综合丁香婷婷六月香| 黄一区二区三区| 欧美一区二区视频网站| 亚洲精品国产精品乱码不99| 国产91富婆露脸刺激对白| 91精品久久久久久蜜臀| 洋洋成人永久网站入口| 99re6这里只有精品视频在线观看| 精品久久一区二区三区| 午夜视黄欧洲亚洲| 91色porny在线视频| 国产精品久久网站| 国产福利一区在线| 久久久亚洲欧洲日产国码αv| 日产国产欧美视频一区精品| 欧美日韩和欧美的一区二区| 亚洲国产视频一区二区| 在线观看亚洲精品视频| 亚洲黄网站在线观看| 97精品视频在线观看自产线路二| 国产精品天干天干在观线| 国产盗摄一区二区三区| 久久精品视频一区二区三区| 国产一区二区h| 久久日韩粉嫩一区二区三区| 国产一区二区中文字幕| 久久久精品国产免大香伊| 国产福利91精品一区| 国产精品卡一卡二卡三| www.亚洲免费av| 日韩毛片高清在线播放| 日本高清视频一区二区| 亚洲bt欧美bt精品777| 欧美久久一二区| 久久精品国产色蜜蜜麻豆| 精品久久久三级丝袜| 国产成人免费视频一区| 国产精品久久久久久久午夜片| 成人三级伦理片| 亚洲天堂2014| 欧美久久久久久蜜桃| 另类综合日韩欧美亚洲| 久久久精品国产免大香伊| av不卡在线播放| 亚洲精品国产无天堂网2021 | 99久久777色| 一个色在线综合| 欧美精品在线观看播放| 韩国午夜理伦三级不卡影院| 欧美韩国日本综合| 欧美性三三影院| 蜜臀av国产精品久久久久| 久久久精品免费网站| www.亚洲人| 美女免费视频一区| 国产精品视频一二三区| 欧美婷婷六月丁香综合色| 韩国精品一区二区| **欧美大码日韩| 欧美一二三区在线观看| 成人国产精品视频| 日韩精品每日更新| 国产精品成人免费精品自在线观看 | 琪琪久久久久日韩精品| 国产色91在线| 在线播放中文一区| 成人精品小蝌蚪| 奇米精品一区二区三区四区| 国产精品不卡在线观看| 日韩精品一区二| 欧洲人成人精品| 视频一区中文字幕| 精品黑人一区二区三区久久 | 青青草成人在线观看| 国产精品久久久久久久久动漫 | 亚洲国产精品久久久久秋霞影院| 精品成人免费观看| 欧美丝袜丝交足nylons| 国产不卡在线播放| 激情六月婷婷综合| 石原莉奈在线亚洲三区| 亚洲靠逼com| 日本一区二区电影| 久久综合成人精品亚洲另类欧美| 色菇凉天天综合网| av欧美精品.com| 国产成人在线电影| 美女视频第一区二区三区免费观看网站 | 久久av资源网| 亚洲18色成人| 亚洲与欧洲av电影| 依依成人精品视频| 成人免费在线播放视频| 国产婷婷色一区二区三区| 日韩一区二区三区三四区视频在线观看 | 午夜精品123| 亚洲在线成人精品| 一区av在线播放| 亚洲精品国产第一综合99久久 | 久久99国产精品尤物| 偷拍与自拍一区| 亚洲综合免费观看高清在线观看| 中文成人av在线| 国产午夜精品美女毛片视频| 2021久久国产精品不只是精品| 日韩一区二区影院| 欧美变态tickle挠乳网站| 欧美精三区欧美精三区| 欧美久久久久中文字幕| 欧美裸体bbwbbwbbw| 欧美精品在欧美一区二区少妇| 欧美视频三区在线播放| 91精品国产欧美一区二区18 | 欧美在线啊v一区| 欧美三片在线视频观看| 欧美男男青年gay1069videost| 欧美精品一级二级三级| 制服丝袜国产精品| 欧美mv日韩mv国产网站| 久久久精品综合| 亚洲视频在线观看一区| 亚洲图片欧美一区| 日本亚洲免费观看| 国产精品自拍网站| 成人黄色大片在线观看| 欧美午夜精品一区二区蜜桃| 91精品久久久久久蜜臀| 国产欧美一区在线| 亚洲综合清纯丝袜自拍| 蜜臀久久99精品久久久久久9| 国产福利一区二区三区| 色老综合老女人久久久| 欧美一级艳片视频免费观看| 国产欧美一区二区精品性色超碰| 亚洲色图一区二区三区| 日韩国产欧美三级| 国产成人在线视频播放| 欧美色综合网站| 精品成人一区二区| 亚洲综合丁香婷婷六月香| 久久国产三级精品| 91视频.com| 日韩欧美国产午夜精品| 最新热久久免费视频| 日韩中文字幕区一区有砖一区 | 欧美va亚洲va国产综合| 国产精品女同互慰在线看| 午夜精品视频一区| 成人免费精品视频| 欧美一级艳片视频免费观看| 中文字幕亚洲欧美在线不卡| 日本视频免费一区| 99久久精品国产一区二区三区 | 91精品福利在线一区二区三区 | 色综合久久天天| 日韩欧美中文一区| 亚洲精品成人天堂一二三| 久久精品99国产精品| 在线精品视频免费播放| 日本一区二区三区高清不卡| 丝袜美腿一区二区三区| 色婷婷激情综合| 国产欧美日韩视频在线观看| 午夜激情久久久| 色偷偷一区二区三区| 国产欧美精品一区aⅴ影院| 蜜臀av性久久久久蜜臀aⅴ流畅| 一本大道久久a久久精二百| 国产清纯在线一区二区www| 蜜臀久久99精品久久久画质超高清| 91国产视频在线观看| 国产精品久久久久久久久久免费看| 加勒比av一区二区| 日韩色在线观看| 亚洲v中文字幕| 色噜噜狠狠成人网p站| 中文字幕在线不卡一区| 国产一区亚洲一区| 欧美精品一区二区三区蜜桃视频| 亚洲18色成人| 欧美精品一二三| 视频一区二区中文字幕| 欧美日本乱大交xxxxx| 亚洲国产婷婷综合在线精品| 欧美中文字幕一区二区三区| 亚洲男同1069视频| 一本大道综合伊人精品热热| 亚洲视频综合在线| 色av一区二区| 亚洲成在人线免费| 欧美日韩高清一区二区三区| 亚洲国产综合色| 欧美一区二视频| 狠狠狠色丁香婷婷综合激情| 精品99久久久久久|