天天看點

Unicode介紹2、Unicode優點3、Winodws對Unicode的支援4、char,WCHAR, TCHAR之差別與聯系

 1、Unicode起源

    Unicode是Apple和Xerox公司于1988年建立的一個技術标準。1991年,成立了一個集團機構負責Unicode的開發和推廣應用。該集團由許多知名公司組成。

  Unicode提供了一種簡單而又一緻的表示字元串的方法。Unicode字元串中的所有字元都是1 6位的(兩個位元組)。

2、Unicode優點

  可以很容易地在不同語言之間進行資料交換。

    使你能夠配置設定支援所有語言的單個二進制. e x e檔案或D L L檔案。

    提高應用程式的運作效率。

3、Winodws對Unicode的支援

    Windows 2000是使用Unicode從頭進行開發的,用于建立視窗、顯示文本、進行字元串操作等的所有核心函數都需要Unicode字元串。如果調用任何一個Winodws函數并給它傳遞一個ANSI字元串,那麼系統首先要将字元串轉換成Winodws,然後将Winodws字元串傳遞給作業系統。如果希望函數傳回ANSI字元串,系統就會首先将Unicode字元串轉換成ANSI字元串,然後将結果傳回給你的應用程式。

    Windows 98不是一種全新的作業系統。它繼承了1 6位Winodws作業系統的特性,它不是用來處理Unicode的.

    因為WindowsCE在世界各地銷售,為了降低軟體開發成本,且使Windows CE盡量小些,微軟在此系統上隻提供了Unicode支援,沒有提供對ANSI的支援。

4、char,WCHAR, TCHAR之差別與聯系

   char 表示ANSI字元集,一個字元占一個位元組。

    WCHAR表示寬字元集,一個字元占二個位元組,即UNICODE字元。

   對于TCHAR,當定義了_UNICODE宏,則代表WCHAR,如果沒有定義_UNICODE宏,則代表char,TCHAR.h中有形如下面的定義:

#ifdefine _UNICODE

typedef WCHAR TCHAR

#else

   typedef char TCHAR

#endif

    是以,如果想要你的程式既支援ANSI,又支援UNICODE,那就使用定義在TCHAR.h中的類型和函數。

上一篇: Unicode簡介

繼續閱讀