Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mengubah direktori kerja saat ini.
Sintaks
int _chdir(
const char *dirname
);
int _wchdir(
const wchar_t *dirname
);
Parameter
dirname
Jalur direktori kerja baru.
Nilai hasil
Fungsi-fungsi ini mengembalikan nilai 0 jika berhasil. Nilai pengembalian -1 menunjukkan kegagalan. Jika jalur yang ditentukan tidak dapat ditemukan, errno diatur ke ENOENT. Jika dirname adalah NULL, handler parameter yang tidak valid dipanggil, seperti yang dijelaskan dalam Validasi parameter. Jika eksekusi diizinkan untuk melanjutkan, errno diatur ke EINVAL dan fungsi mengembalikan -1.
Keterangan
Fungsi mengubah _chdir direktori kerja saat ini ke direktori yang ditentukan oleh dirname. Parameter dirname harus merujuk ke direktori yang ada. Fungsi ini dapat mengubah direktori kerja saat ini pada drive apa pun. Jika huruf kandar baru ditentukan dalam dirname, huruf drive default juga diubah. Misalnya, asumsikan A adalah huruf drive default dan \BIN merupakan direktori kerja saat ini. Panggilan berikut mengubah direktori kerja saat ini untuk drive C ke \temp dan ditetapkan C sebagai drive default baru:
_chdir("c:\\temp");
Saat Anda menggunakan karakter garis miring terbelakang opsional (\) di jalur, Anda harus menempatkan dua garis miring terbelakang (\\) dalam string C literal untuk mewakili garis miring terbelakang tunggal (\).
_wchdir adalah versi karakter luas dari _chdir; dirname argumen ke _wchdir adalah string karakter lebar. _wchdir dan _chdir berulah secara identik jika tidak.
Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.
Pemetaan rutin teks generik
Tchar.h Rutin |
_UNICODE dan _MBCS tidak ditentukan |
_MBCS Didefinisikan |
_UNICODE Didefinisikan |
|---|---|---|---|
_tchdir |
_chdir |
_chdir |
_wchdir |
Persyaratan
| Rutin | Header yang diperlukan | Header opsional |
|---|---|---|
_chdir |
<direct.h> |
<errno.h> |
_wchdir |
<direct.h> atau <wchar.h> |
<errno.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
// 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
Lihat juga
Kontrol direktori
_mkdir, _wmkdir
_rmdir, _wrmdir
system, _wsystem