目前,我正在通过GetModuleFileName
获取文件的路径,并通过执行以下操作将其存储在szExeFilePath中:
TCHAR szExeFilePath[MAX_PATH];
GetModuleFileName(NULL, szExeFilePath, MAX_PATH);
然后返回C:\\dev\\program\\Debug\\program.exe
但是,我也只想存储program.exe
。我环顾四周,发现_splitpath_s
可能是最简单的方法。唯一的问题是,我没有看到有关如何实际使用_splitpath_s
的任何解释,而且根本无法使它正常工作。
所以基本上我是在问如何使用_splitpath_s
或是否有一种更简单/更容易的方法来获取可执行文件的文件名。
答案 0 :(得分:3)
但是我也只想存储program.exe
使用C ++ 17,您可以简单地使用std::filesystem
#include <iostream>
#include <filesystem>
namespace fs = std::filesystem;
int main()
{
std::cout << fs::path("C:/dev/program/Debug/program.exe").filename() << '\n' ;
}