阅读量:94
为了处理跨平台兼容性,getcwd函数在不同的操作系统中可能有不同的实现。在C++中,你可以使用标准库中的头文件,它提供了一个跨平台的current_path函数,可以用来获取当前工作目录。
以下是一个简单的示例:
#include
#include
int main() {
try {
std::filesystem::path current_path = std::filesystem::current_path();
std::cout << "Current working directory: " << current class="hljs-built_in">catch (const std::filesystem::filesystem_error& e) {
std::cerr << "Error: " << e class="hljs-built_in">what() << std class="hljs-keyword">return 0;
}
这个示例使用了C++17的库,它提供了一个跨平台的API来处理文件系统操作。current_path函数返回一个std::filesystem::path对象,表示当前工作目录。如果在获取当前工作目录时发生错误,将抛出std::filesystem::filesystem_error异常。
请注意,为了使这个示例正常工作,你需要确保你的编译器支持C++17标准,并在编译时启用C++17支持。例如,如果你使用的是g++编译器,可以使用以下命令行选项来启用C++17:
g++ -std=c++17 -o my_program my_program.cpp