更改C 中的當前工作目錄
在處理文件和I/O 時經常遇到需要調整當前工作目錄的情況運營。 C 透過使用 std::filesystem::current_path 函數為此任務提供了一個獨立於平台的解決方案。
C 17 解決方案:std::filesystem::current_path
在 C 17 中,std::filesystem 函式庫為檔案系統操作提供了跨平台 API。 std::filesystem::current_path 函數允許檢索和設定目前工作目錄。
範例:
<code class="cpp">#include <filesystem> int main() { namespace fs = std::filesystem; // Retrieve the current working directory fs::path current_path = fs::current_path(); // Set the current working directory fs::current_path(current_path / "new_directory"); }</code>
在此範例中,我們首先擷取使用 current_path 函數取得目前工作目錄並將其儲存在 fs::path 物件中。然後我們可以使用這個 fs::path 物件將目前工作目錄設定為新路徑,在本例中為子目錄「new_directory」。
相容性
std::filesystem 庫在 C 17 及更高版本中可用。對於舊版的 C ,可以使用特定於平台的選項,例如 Windows 的 direct.h 或用於 UNIX/POSIX 系統的 unistd.h 。然而,這些選項缺乏 std::filesystem::current_path 的可移植性。
以上是如何更改 C 中的目前工作目錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!