“我将用C语言作为工具,开始WINDOWS API的使用”
windows NT 从底层开始支持unicode。
1.字符类型
WINDOWS的字符类型在WINNT.H和CTYPE.H中有定义:
变量类型\位宽 | 8位(ASCII) | 16位(UNICODE) | 模板 |
变量 | char,CHAR | wchar_t,WCHAR | TCHAR |
指针 | PCHAR,LPCH,PCH,NPSTR,LPSTR,PSTR | PWCHAR,LPWCH,PWCH,NWPSTR,LPWSTR,PWSTR | PTCHAR,LPTCH,PTCH,PTSTR,LPTSTR |
常量指针 | LPCCH,PCCH,LPCSTR,PCSTR | LPCWH,PCWCH,LPCWSTR,PCWSTR | LPCTSTR |
“
前缀N和L表示’near’和’long’,在早起版本的WINDOWS中使用,现在的WIN32中,和前缀‘P''’没有什么区别
WINDOWS为我们提供了一种字符类型模板:在程序中如果预定义条件有UNICODE,则TCHAR对应于16位版本,否则8位,其他模板类型类似
”
2.字符串
WINDOWS对于UNICODE常量字符串可以使用宏TEXT(字符串)
对于字符串的处理WINDOWS定义了一组函数罗列如下:
lstrlen 返回字符的个数
lstrcpy 拷贝一个字符串
lstrcpyn 拷贝指定个数的字符串
lstrcat 将一个字符串附加在另一个字符串的后面
lstrcmp 比较两个字符串
lstrcmpi 比较两个字符串并不区分大小写