"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como alterar o diretório de trabalho atual em C++?

Como alterar o diretório de trabalho atual em C++?

Publicado em 2024-11-08
Navegar:695

How to Change the Current Working Directory in C  ?

Alterando o diretório de trabalho atual em C

A necessidade de ajustar o diretório de trabalho atual é frequentemente encontrada ao trabalhar com arquivos e E/S operações. C oferece uma solução independente de plataforma para esta tarefa através do uso da função std::filesystem::current_path.

C 17 Solução: std::filesystem::current_path

Em C 17, a biblioteca std::filesystem fornece uma API de plataforma cruzada para operações do sistema de arquivos. A função std::filesystem::current_path permite recuperar e definir o diretório de trabalho atual.

Exemplo:

#include 

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");
}

Neste exemplo, primeiro recuperamos o diretório de trabalho atual usando a função current_path e o armazenamos em um objeto fs::path. Podemos então usar este objeto fs::path para definir o diretório de trabalho atual para um novo caminho, neste caso, o subdiretório "new_directory".

Compatibility

A biblioteca std::filesystem está disponível em C 17 e posterior. Para versões mais antigas de C , estão disponíveis opções específicas da plataforma, como direct.h para Windows ou unistd.h para sistemas UNIX/POSIX. No entanto, essas opções não possuem a portabilidade de std::filesystem::current_path.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3