_chdir, _wchdir

 

Date de publication : novembre 2016

Pour obtenir la dernière documentation sur Visual Studio 2017 RC, consultez Documentation Visual Studio 2017 RC.

Change le répertoire de travail actif.

int _chdir(   
   const char *dirname   
);  
int _wchdir(   
   const wchar_t *dirname   
);  

Paramètres

dirname
Chemin du nouveau répertoire de travail.

Ces fonctions retournent la valeur 0 en cas de réussite. Une valeur de retour –1 indique un échec. Si le chemin spécifié est introuvable, errno est défini sur ENOENT. 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.

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, si A est la lettre de lecteur par défaut et \BIN le répertoire de travail actuel, l’appel suivant change le répertoire de travail actuel pour le lecteur C 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 façon identique.

Mappage de routines de texte générique :

Routine Tchar.h_UNICODE et _MBCS non définis_MBCS défini_UNICODE défini
_tchdir_chdir_chdir_wchdir
RoutineEn-tête requisEn-tête facultatif
_chdir<direct.h><errno.h>
_wchdir<direct.h> ou <wchar.h><errno.h>

Pour plus d’informations sur la compatibilité, voir Compatibilité.

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

Le volume dans le lecteur C n’a pas de nom. Le numéro de série du volume est 2018-08A1 Répertoire de c:\windows 29/08/2002  04:00         1 004 032 explorer.exe 17/12/2002  16:43            10 752 hh.exe 03/03/2003  09:24            33 792 ieuninst.exe 29/10/1998  16:45           306 688 IsUninst.exe 29/08/2002  04:00            66 048 NOTEPAD.EXE 03/03/2003  09:24            33 792 Q330994.exe 29/08/2002  04:00           134 144 regedit.exe 28/02/2003  18:26            46 352 setdebug.exe 29/08/2002  04:00            15 360 TASKMAN.EXE 29/08/2002  04:00            49 680 twunk_16.exe 29/08/2002  04:00            25 600 twunk_32.exe 29/08/2002  04:00           256 192 winhelp.exe 29/08/2002  04:00           266 752 winhlp32.exe 13 Fichier(s)      2 249 184 octets 0 Rép(s)  67 326 029 824 octets libres  

System::Environment::CurrentDirectory

Contrôle de répertoire
_mkdir, _wmkdir
_rmdir, _wrmdir
system, _wsystem

Afficher: