使用C++扩展名打印当前文件名

fro*_*mar 6 c++ file

我正在编写C++代码,我想用其扩展名打印当前文件名.是的,这是常见问题之一.一种解决方案是使用argv [0].这很酷,但它没有给出扩展名.我可以用扩展名吗?

bar*_*nos 6

您可以使用 打印完整路径名std::cout << __FILE__

如果你想单独打印文件名,那么你可以这样做:

std::string file = __FILE__;
size_t index;
for (index = file.size(); index > 0; index--)
{
    if (file[index - 1] == '\\' || file[index - 1] == '/')
        break;
}
std::cout << file.substr(index);
Run Code Online (Sandbox Code Playgroud)