获取exe所在的目录
欢迎使用Markdown编辑器
string GetExePath()
{
TCHAR szFilePath[MAX_PATH + 1] = { 0 };
GetModuleFileName(NULL, szFilePath, MAX_PATH);
(_tcsrchr(szFilePath, _T('\\')))[1] = 0;
return szFilePath;
}。
这段代码很简单,唯一有点难度的就是最后一句(_tcsrchr(szFilePath, _T(’\’)))[1] = 0;
其实这句可分解为两句话
char *ch = _tcsrchr(szFilePath, _T(’\’));查找最后一个\出现的位置,并返回\后面的字符(包括\)
ch[1] = 0;//NULL 通过操作来操作szFilePath = 将szFilePath截断,截断最后一个\后面的字符(不包括\)
注释:
C++标准库函数提供了字符和字符串的操作函数,并提供了其UNICODE版本。
1、_tcschr代替strchr或者wcschr
函数功能:查找一个字符串中首次出现的指定字符
2、_tcsrchr代替strrchr或者wcsrchr
函数功能:查找一个字符串中最后一次出现的指定字符。