请问,Unicode Character Set 和 DBCS,有何不同?

解决方案 »

  1.   

    DBCS(DoubleBytes Characters Set)是一种字符集规范,它规定用两个字节表示一个字符,这样和单字节字符集相比,可以容纳更多的字符。Unicode Character Set 是按照DBCS规范实现的一种字符集方案。————————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    ————————————————————————————————————
      

  2.   

    DBCS是一种双字符集,不过不太好,会引起附加编程!因为DBCS对待ASCII码仍然是一个字节代表一个字符,而中文这类字符才是两个字节代表一个字符。
    而Unicode则是无论中文英文,都是用双字节来表示一个字符,这样就不会引起附加编程
      

  3.   

    Borland是这样解释的
    要书的请到
    http://expert.csdn.net/Expert/topic/2163/2163244.xml?temp=.3149225
    -----------------------------------------------------------------
    Windows 和Linux 都支持单字节和多字节字符集,同样也支持Unicode。使用单字节字符集(SBCS),
    字符串的每个字节表示一个字符。ANSI 字符集被许多西方(国家的)操作系统使用,它是单字节字符
    集。
    在多字节字符集(MBCS)中,一些字符由一个字节表示,而另一些则使用多个字节。多字节字符的第
    一个字节称为头字节(lead byte)。通常,在多字节字符集中,前128 个字符对应于7 位ASCII 字符(0-127),
    任何序数值大于127 的字节为多字节字符的头字节。只有单字节字符能包含空值(#0)。多字节字符集
    (特别是双字节字符集,DBCS),被亚洲语言广泛使用,但Linux 使用的UTF-8 字符集是Unicode 的一
    种多字节编码。
    在Unicode 字符集中,每个字符用两个字节表示,所以,一个Unicode 字符串是由双字节组成的序列。
    Unicode 字符和字符串也被称为宽字符和宽字符串。前256 个Unicode 字符被映射到ANSI 字符集。
    Windows 操作系统支持Unicode(UCS-2)。Linux 操作系统支持UCS-4,是UCS-2 的超集。Delphi/Kylix
    在两个平台上都支持UCS-2。
    Object Pascal 支持单字节和多字节字符以及字符串,适用的类型有:Char、PChar、AnsiChar、PAnsiChar
    和AnsiString。对多字节字符串使用索引是不可取的,因为S[i]表示S 中第i 个字节(不一定是第i 个字
    符),但是,标准字符串处理函数有多字节版本,它们还实现了locale-specific ordering for characters(多
    字节函数的名称通常以Ansi 开头,比如StrPos 的多字节版本是AnsiStrPos)。多字节支持依赖于操作系
    统和本地设置(current locale)。
    Object Pascal 使用WideChar、PWideChar 和WideString 类型支持Unicode 字符和字符串。