Sdílet prostřednictvím


_chdir _wchdir

Změní aktuální pracovní adresář.

Důležitá poznámkaDůležité

Toto rozhraní API nelze použít v aplikacích, které jsou spuštěny v systému Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /ZW.

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

Parametry

  • dirname
    Cesta k nové pracovní adresář.

Vrácená hodnota

Tato funkce vrátí hodnotu 0 v případě úspěchu.Vrácená hodnota –1 označuje chybu.V případě, že zadaná cesta nebyla nalezena, errno je nastavena na ENOENT.Pokud dirname má hodnotu NULL, je vyvolána obslužná rutina neplatný parametr, jak je popsáno v Ověření parametrů.Je-li pokračovat, je povoleno zpracování errno je nastavena na EINVAL a vrátí hodnotu -1.

Poznámky

_chdir Funkce změní aktuální pracovní adresář do adresáře určeného parametrem dirname.dirname Musí odkazovat na existující adresář.Tuto funkci můžete změnit aktuální pracovní adresář na libovolnou jednotku.Jestliže se nové písmeno jednotky v dirname, je také změněn výchozí písmeno jednotky.Například \BIN je aktuální pracovní adresář je výchozí písmeno jednotky, následující volání změní aktuální pracovní adresář na jednotce C a C se zavádí jako nový výchozí jednotka:

_chdir("c:\\temp");

Při použití volitelné lomítka (\) do cesty, je nutné umístit dvě zpětná lomítka (\\) v C řetězcový literál představující jedno zpětné lomítko (\).

_wchdirje verzí širokého znaku _chdir; dirname argument _wchdir je řetězec širokého znaku. _wchdira _chdir jinak chovat identicky.

Mapování rutiny obecného textu:

Byla zahájena rutina Tchar.h

_UNICODE a _MBCS není definováno

_MBCS, definice

_UNICODE definována

_tchdir

_chdir

_chdir

_wchdir

Požadavky

Byla zahájena rutina

Požadované záhlaví

Volitelné záhlaví

_chdir

<direct.h>

<errno.h>

_wchdir

<direct.h> nebo <wchar.h>

<errno.h>

Další informace o kompatibilitě v tématu Compatibility v úvodu.

Příklad

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

Ekvivalent v rozhraní .NET Framework

System::Environment::CurrentDirectory

Viz také

Referenční dokumentace

Ovládací prvek adresář

_mkdir _wmkdir

_rmdir _wrmdir

system, _wsystem