_chdir, _wchdir
Zmienia bieżący katalog roboczy.
Ważne |
---|
Tego API nie można używać w aplikacjach korzystających ze środowiska wykonawczego Windows.Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane przez /ZW. |
int _chdir(
const char *dirname
);
int _wchdir(
const wchar_t *dirname
);
Parametry
- dirname
Ścieżka do nowego katalogu roboczego.
Wartość zwracana
Funkcje te zwracają wartość 0, jeśli kończy się pomyślnie.Zwracana wartość wynosząca –1 wskazuje błąd.Jeśli nie można odnaleźć określonej ścieżki, errno jest ustawiona na ENOENT.Jeśli dirname ma wartość NULL, zostanie wywołany nieprawidłowy parametr uchwytu, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie będzie mógł kontynuować, errno jest ustawiona na EINVAL i funkcja zwraca wartość -1.
Uwagi
_chdir Funkcji zmienia bieżący katalog roboczy na katalog określony przez dirname.dirname Parametru musi odwoływać się do istniejącego katalogu.Tej funkcji można zmienić bieżący katalog roboczy na dowolnym dysku.Jeśli litera dysku jest określona w dirname, jak również zmianie domyślną literę dysku.Na przykład jeśli jest domyślną literę dysku i \BIN jest bieżący katalog roboczy, poniższe wywołanie zmienia bieżący katalog roboczy na dysku C i ustanawia C jako nowy dysk domyślny:
_chdir("c:\\temp");
Kiedy używać ukośnika odwrotnego opcjonalne (\) w ścieżkach, należy umieścić dwa ukośniki odwrotne (\\) w ciągu C Literał reprezentuje pojedynczą kreską ułamkową odwróconą (\).
_wchdir jest to wersja szeroko charakter _chdir; dirname argument _wchdir jest ciągiem znaków wide. _wchdir i _chdir zachowują się identycznie inaczej.
Tekst rodzajowy rutynowych mapowania:
Procedura Tchar.h |
_UNICODE i _MBCS nie zdefiniowany |
_MBCS zdefiniowano |
_UNICODE zdefiniowany |
---|---|---|---|
_tchdir |
_chdir |
_chdir |
_wchdir |
Wymagania
Procedura |
Wymagany nagłówek |
Opcjonalny nagłówek |
---|---|---|
_chdir |
<direct.h> |
<errno.h> |
_wchdir |
<direct.h> lub <wchar.h> |
<errno.h> |
Aby uzyskać więcej informacji na temat zgodności – zobacz: Zgodność.
Przykład
// 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");
}
Odpowiednik w programie .NET Framework
Katalog systemu bieżących środowisk