Win32API中的宽字符

4.1了解什么是Win32API

Win32API就是windows操作系统提供给我们的函数(应用程序接口),其主要存放在C:\Windows\System32
(存储的DLL是64位)、C:\Windows\SysWOW64(存储的DLL是32位)下面的所有DLL文件(几千个)

重要的DLL文件:

  1. Kernel32.dll:最核心的功能,例如内存管理、进程线程相关的函数等;

  2. User32.dll:Windows用户界面相关的应用程序接口,例如创建窗口、发送信息等;

  3. GDI32.dll:全称是Graphical Device Interface(图形设备接口),包含用于画图和显示文本的函数。

在C语言中我们想要使用WinAPI的话直接在代码中包含Windows这个头文件即可。

比如我们想要弹出一个提示窗口,Win32API文档中弹窗API的格式如下:

int MessageBox(
HWND hWnd, // handle to owner window
LPCTSTR lpText, // text in message box
LPCTSTR lpCaption, // message box title
UINT uType // message box style
);

这个代码可能看起来非常可怕,好像我们都没有接触过,但实际上其不是什么新的类型,所谓的
新的类型无非就是给原有的类型重新起了一个名字,这样做是位了将所有类型统一化,便于读写,
如果涉及到跨平台的话将原来的类型修改一个就好了,无需对代码进行重写

常用的数据类型在Win32中都重新起了名字:

汇编:

    byte    BYTE    PBYTE

    word    WORD    PWORD

    dword   DWORD   PWORD

C语言:
     char             CHAR       PCHAR

     unsigned char     UCHAR      PUCHAR

     short            SHORT      PSHORT

     unsigned short   USHORT     PUSHORT

     int              INT        PINT

     unsigned int     UINT       PUINT 

C++语言:
   bool  BOOL

4.2在Win32中使用字符串

字符类型:

CHAR strBuff[] = "中国";//char
WCHAR strBuff[] = L"中国";//wchar_t
TCHAR strBuff[] = TEXT("中国");//TCHAR根据当前项目的编码自动选择char还是wchar_t,在win32中推荐使用这种方式。

字符串指针:

PSTR strPoint = "中国"; //char*
PWSTR strPoint=L"中国";//wchar_t*
PTSTRT strPoint=TEXT("中国");//PTSTR根据当前项目的编码自动选择char* 还是wchar_t* 在Win32中推荐使用这种方式。
```/2069956-20220517215848808-155326404.png)
posted @ 2022-05-17 22:00  不会笑的孩子  阅读(64)  评论(0编辑  收藏  举报