第二章 Unicode简介

1,Windows通过双字节技术DBCS解决这个问题,代码页定义不同的字符集,称为ANSI字符集,比如日文为CP932,韩文为CP949,繁体中文为CP950,简体中文为CP936

2,Unicode使用双字节,并且为一个字符集,解决二义性的问题

3,Unicode宽字符使用wchar_t声明,为两字节,并且字符或者字符串常量前应该加L

4,为了统一源代码中不同字符集的字符处理函数,使用头文件tchar.h

如:_tcslen,_tprintf,以及__T(),_T(),_TEXT()

注:#define __TEXT(quote) L##quote 为令牌粘贴

5,Microsoft C包含宽字符以及通用版的需要字符串参数的C语言运行库函数,Windows也复制了一部分C函数。如:

lstrlen,lstrcpy,lstrcpyn,lstrcat,lstrcmp,lstrcmpi    //winbase.h中定义

sprintf不同版本

 

ASCII

宽字符

通用

标准版

sprintf

swprintf

_stprintf

最大长度版

_snprintf

_snwprintf

_sntprintf

Windows版

wsprintfA

wsprintfW

wsprintf

注:wsprintf缓冲区有1024个字符的限制

05-03 22:11