_chdir、_wchdir

現在の作業ディレクトリを変更します。

重要 : 重要

この API は、Windows のランタイムで実行するアプリケーションで使用することはできません。詳細については、でサポート /ZW CRT 関数" "を参照してください。

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

パラメーター

  • dirname
    新しい作業ディレクトリのパス。

戻り値

これらの関数は、成功した場合、値 0 を返します。–1 の戻り値は失敗を示します。指定したパスが検索できない場合 errnoは ENOENTに設定されます。dirname が null の場合、無効なパラメーター ハンドラーが パラメーターの検証に説明されているように、開始されます。実行の継続が許可 errnoは EINVALおよび関数の戻り値の -1 に設定されます。

解説

ディレクトリに対する現在の作業ディレクトリが dirnameで指定した _chdirの関数が。dirname のパラメーターは、既存のディレクトリを示す必要があります。この関数は、ドライブの現在の作業ディレクトリを変更できます。新しいドライブ文字の dirnameに指定されている既定のドライブ文字は同様に変更されます。たとえば、A が既定のドライブ文字にし、\BIN が現在の作業ディレクトリの場合、次の呼び出しの変更は、新しい既定のドライブとしてドライブの C の現在の作業ディレクトリ C を確立し、:

_chdir("c:\\temp");

省略可能なパスに円記号 (\) を使用すると、C++.のリテラル文字列に一つの円記号 (\) を表すために 2 個 (\\) を設定する必要があります。

_wchdirは _chdirのワイド文字バージョンです; _wchdirへの dirname の引数は、文字列. _wchdirで、_chdirは、同じです。

汎用テキスト ルーチンのマップ

Tchar.h のルーチン

_UNICODE および _MBCS が未定義の場合

_MBCS が定義されている場合

_UNICODE が定義されている場合

_tchdir

_chdir

_chdir

_wchdir

必要条件

ルーチン

必須ヘッダー

オプション ヘッダー

_chdir

<direct.h>

<errno.h>

_wchdir

<direct.h> か <wchar.h>

<errno.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

使用例

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

同等の .NET Framework 関数

System::Environment::CurrentDirectory

参照

関連項目

ディレクトリ制御

_mkdir、_wmkdir

_rmdir、_wrmdir

system、_wsystem