Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Change le répertoire de travail actif.
Syntaxe
int _chdir(
const char *dirname
);
int _wchdir(
const wchar_t *dirname
);
Paramètres
dirname
Chemin du nouveau répertoire de travail.
Valeur retournée
Ces fonctions retournent la valeur 0 en cas de réussite. Une valeur de retour de -1 indique l’échec. Si le chemin spécifié est introuvable, errno la valeur est définie ENOENTsur . Si dirname a la valeur NULL, le gestionnaire de paramètre non valide est appelé, comme décrit dans Validation de paramètre. Si l’exécution est autorisée à se poursuivre, errno est défini sur EINVAL et la fonction retourne -1.
Notes
La fonction _chdir change le répertoire de travail actuel pour le répertoire spécifié par dirname. Le paramètre dirname doit faire référence à un répertoire existant. Cette fonction peut changer le répertoire de travail actuel sur n’importe quel lecteur. Si une nouvelle lettre de lecteur est spécifiée dans dirname, la lettre du lecteur par défaut est également changée. Par exemple, supposons que A la lettre de lecteur par défaut est \BIN le répertoire de travail actuel. L’appel suivant modifie le répertoire de travail actuel du lecteur C \temp vers et établit C comme nouveau lecteur par défaut :
_chdir("c:\\temp");
Quand vous utilisez le caractère facultatif barre oblique inverse (\) dans les chemins, vous devez placer deux barres obliques inverses (\\) dans une chaîne littérale C pour représenter une barre oblique inverse (\).
_wchdir est une version à caractères larges de _chdir; l'argument dirname de _wchdir est une chaîne à caractères larges. Sinon,_wchdir et _chdir se comportent de la même façon.
Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.
Mappage de routine de texte générique
Routine Tchar.h |
_UNICODE et _MBCS non définis |
_MBCS défini |
_UNICODE défini |
|---|---|---|---|
_tchdir |
_chdir |
_chdir |
_wchdir |
Spécifications
| Routine | En-tête requis | En-tête facultatif |
|---|---|---|
_chdir |
<direct.h> |
<errno.h> |
_wchdir |
<direct.h> ou <wchar.h> |
<errno.h> |
Pour plus d’informations sur la compatibilité, consultez Compatibility.
Exemple
// 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");
}
Volume in drive C has no label.
Volume Serial Number is 2018-08A1
Directory of c:\windows
08/29/2002 04:00 AM 1,004,032 explorer.exe
12/17/2002 04:43 PM 10,752 hh.exe
03/03/2003 09:24 AM 33,792 ieuninst.exe
10/29/1998 04:45 PM 306,688 IsUninst.exe
08/29/2002 04:00 AM 66,048 NOTEPAD.EXE
03/03/2003 09:24 AM 33,792 Q330994.exe
08/29/2002 04:00 AM 134,144 regedit.exe
02/28/2003 06:26 PM 46,352 setdebug.exe
08/29/2002 04:00 AM 15,360 TASKMAN.EXE
08/29/2002 04:00 AM 49,680 twunk_16.exe
08/29/2002 04:00 AM 25,600 twunk_32.exe
08/29/2002 04:00 AM 256,192 winhelp.exe
08/29/2002 04:00 AM 266,752 winhlp32.exe
13 File(s) 2,249,184 bytes
0 Dir(s) 67,326,029,824 bytes free
Voir aussi
Contrôle d’annuaire
_mkdir, _wmkdir
_rmdir, _wrmdir
system, _wsystem