1.MessageBox函数
原型:
int MessageBoxA(
HWND hWnd , /* 句柄 */
LPCSTR lpText, /* 内容 */
LPCSTR lpCaption, /* 标题 */
UINT uType /* 类型 */
);
用法:
#include <windows.h>
#include <stdio.h>
int main(int argc, const char *argv[]){
MessageBox(NULL, "hello", "windows programming", NULL);
return 0;
}
2.sprintf
原型:
int sprintf(char *buffer, const char *format, [argument]…)
用法:
#define _CRT_SECURE_NO_WARNINGS //printf 一类的函数可能会造成格式化字符串漏洞,所以要加这条宏定义来消除警告
#include <Windows.h>
#include <stdio.h>
int main(int argc, const char *argv[]){
char buf[32];
sprintf(buf, "%d", 1234);
printf("%s\n", buf);
sprintf(buf, "%s", "Summer Pockets");
printf("%s", buf);
return 0;
}
/*output:
1234
Summer Pockets
*/
3.CreateFile
原型:
HANDLE WINAPI CreateFile(
_In_ LPCTSTR lpFileName, // 文件名
_In_ DWORD dwDesiredAccess, // 访问方式
_In_ DWORD dwShareMode, // 共享模式
_In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes, // 安全属性
_In_ DWORD dwCreationDisposition,// 创建方式
_In_ DWORD dwFlagsAndAttributes, // 文件属性
_In_opt_ HANDLE hTemplateFile // 模板文件句柄
);
前面的_in_ 表示该参数是一个输入参数,即数值直接传入
_Out_指输出参数,一般传入指针,函数执行中会通过指针对该实参赋值
_opt_表示该参数是可选的,即可以设置为空
4.DeleteFile
原型:
BOOL WINAPI DeleteFile(
_In_ LPCTSTR lpFileName // 删除文件名
);
5.CopyFile
原型:
BOOL WINAPI CopyFile(
_In_ LPCTSTR lpExistingFileName, // 源文件名(路径)
_In_ LPCTSTR lpNewFileName, // 新文件名(路径)
_In_ BOOL bFailIfExists // 是否避免覆盖
);
进行赋值的时候要指定源文件名和新文件名,不然会出错
6.MoveFile
原型:
BOOL WINAPI MoveFile(
_In_ LPCTSTR lpExistingFileName, // 原文件名(路径)
_In_ LPCTSTR lpNewFileName // 新文件名(路径)
);
7.FindFirstFile
原型:
HANDLE WINAPI FindFirstFile(
_In_ LPCTSTR lpFileName, // 待查目录
_Out_ LPWIN32_FIND_DATA lpFindFileData // 找到的文件(输出参数)
);
第二个参数是一个指向 WIN32_FIND_DATA 结构的指针,WIN_32_FIND_DATA包含了文件信息
8.Readfile
#读取文件内容
BOOL WINAPI ReadFile(
_In_ HANDLE hFile,
_Out_ LPVOID lpBuffer,
_In_ DWORD nNumberOfBytesToRead,
_Out_opt_ LPDWORD lpNumberOfBytesRead,
_Inout_opt_ LPOVERLAPPED lpOverlapped
);
用法:
ReadFile(
hFile, //文件句柄
buffer, //存放文件内容的缓冲区
fileSize, //要读取的字节数
&readSize, //实际读取的字节数
NULL); //用 FILE_FLAG_OVERLAPPED 打开时所需的(疑问
9.GetCurrentDirectory
原型:
DWORD WINAPI GetCurrentDirectory(
_In_ DWORD nBufferLength, // 保存目录的变量大小
_Out_ LPTSTR lpBuffer // 保存目录的变量
);
用法:
GetCurrentDirectory(MAX_PATH, path);
10.FindNextFile
原型:
BOOL WINAPI FindNextFile(
_In_ HANDLE hFindFile, // 相对文件句柄
_Out_ LPWIN32_FIND_DATA lpFindFileData // 获取文件信息(输出参数)
);
第一个参数 是由 FindFirstFile API 调用返回的句柄,后面的结构体指针用于存放文件信息
11.memmove
函数原型:void *memmove(void *dest, const void *source, size_t count)
返回值说明:返回指向dest的void *指针
参数说明:dest,source分别为目标串和源串的首地址。count为要移动的字符的个数
函数说明:memmove用于从source拷贝count个字符到dest,如果目标区域和源区域有重叠的话,memmove能够保证源串在被覆盖之前将重叠区域的字节拷贝到目标区域中
memcpy功能和memmove相同,但是memcpy中dest和source中的区域不能重叠,否则会出现未知结果。