_chdir, _wchdir
Altera o diretório de trabalho atual.
Importante
Esta API não pode ser usada em aplicativos que executam no Tempo de Execução do Windows.Para obter mais informações, consulte Funções CRT sem suporte pelo /ZW.
int _chdir(
const char *dirname
);
int _wchdir(
const wchar_t *dirname
);
Parâmetros
- dirname
Caminho do novo diretório de trabalho.
Valor de retorno
Essas funções retornam um valor de 0 se com êxito. Um valor de retorno – 1 indica falha. Se o caminho especificado não pôde ser encontrado, errno é definido como ENOENT. Se dirname for NULO, o manipulador de parâmetro inválido será invocado, conforme descrito em Validação do parâmetro. Se a execução for permitida continuar, errno está definido como EINVAL e a função retorna -1.
Comentários
As alterações de função de _chdir o diretório de trabalho atual para o diretório especificado por dirname. O parâmetro de dirname deve se referir a um diretório existente. Essa função pode alterar o diretório de trabalho atual em qualquer unidade. Se uma nova letra de unidade é especificada em dirname, a letra da unidade padrão é modificada também. Por exemplo, se é a letra da unidade padrão e \ BIN é o diretório de trabalho atual, as seguintes alterações de chamada o diretório de trabalho atual para a unidade C e estabelecem C como a nova unidade padrão:
_chdir("c:\\temp");
Quando você usa o caractere de barra invertida (opcional)\nos caminhos, você deve colocar duas barras invertidas (\\) na cadeia literal c para representar uma única barra invertida (\).
_wchdir é uma versão de ampla caractere de _chdir; o argumento de dirname a _wchdir é uma cadeia de caracteres. _wchdir ampla de caracteres e _chdir se comporta idêntica de outra forma.
Mapeamento de rotina de Genérico- texto:
Rotina Tchar.h |
_UNICODE e _MBCS não definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tchdir |
_chdir |
_chdir |
_wchdir |
Requisitos
Rotina |
Cabeçalho necessário |
Cabeçalho opcional |
---|---|---|
_chdir |
<direct.h> |
<errno.h> |
_wchdir |
<direct.h> ou <wchar.h> |
<errno.h> |
Para obter mais informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
// crt_chdir.c
// arguments: C:\WINDOWS
/* This program uses the _chdir function to verify
that a given directory exists. */
#include <direct.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
int main( int argc, char *argv[] )
{
if(_chdir( argv[1] ) )
{
switch (errno)
{
case ENOENT:
printf( "Unable to locate the directory: %s\n", argv[1] );
break;
case EINVAL:
printf( "Invalid buffer.\n");
break;
default:
printf( "Unknown error.\n");
}
}
else
system( "dir *.exe");
}
Equivalência do .NET Framework
System::Environment::CurrentDirectory