_chdir, _wchdir
Cambia la cartella di lavoro corrente.
Importante
Questa API non può essere utilizzata nelle applicazioni che vengono eseguite in Windows Runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate con /ZW.
int _chdir(
const char *dirname
);
int _wchdir(
const wchar_t *dirname
);
Parametri
- dirname
Percorso della nuova cartella di lavoro.
Valore restituito
Queste funzioni restituiscono 0 se hanno successo. Un valore pari a -1 indica un errore. Se il percorso specificato non è stato trovato, errno è impostato a ENOENT. Se dirname è NULL, viene richiamato il gestore di parametro non valido, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, errno è impostato a EINVAL e la funzione ritorna -1.
Note
La funzione _chdir cambia la cartella di lavoro corrente con la directory specificata da dirname. Il parametro dirname deve fare riferimento a una directory esistente. Questa funzione può modificare la cartella di lavoro corrente su qualsiasi unità. Se una nuova lettera di unità è specificata in dirname, la lettera di unità predefinita viene modificata. Ad esempio, se A è la lettera di unità predefinita e \BIN è la cartella di lavoro corrente, la chiamata seguente modifica la cartella di lavoro corrente per unità C e stabilisce C come nuova unità predefinita:
_chdir("c:\\temp");
Quando si utilizza il carattere opzionale barra rovesciata (\) nei percorsi, è necessario inserire due barre rovesciate (\\) nella stringa letterale C per rappresentare una barra rovesciata singola (\).
_wchdir è una versione a caratteri estesi di _chdir; l'argomento dirname a _wchdir è una stringa di caratteri estesi. _wchdir e _chdir si comporta altrimenti in modo identico.
Mapping di routine a Testo generico:
Routine Tchar.h |
_UNICODE e _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tchdir |
_chdir |
_chdir |
_wchdir |
Requisiti
Routine |
Intestazione obbligatoria |
Intestazione facoltativa |
---|---|---|
_chdir |
<direct.h> |
<errno.h> |
_wchdir |
<direct.h> o <wchar.h> |
<errno.h> |
Per ulteriori informazioni sulla compatibilità, vedere Compatibilità.
Esempio
// 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");
}
Equivalente .NET Framework
System::Environment::CurrentDirectory