chdir

提供: RAD Studio
移動先: 案内検索

Dir.h:インデックス への移動

ヘッダー ファイル

dir.h

カテゴリ

ディレクトリ制御ルーチン

プロトタイプ

int chdir(const char *path);

int _wchdir(const wchar_t *path);

説明

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

chdir は、path で指定されたディレクトリを、現在の作業ディレクトリにします。path は、既存のディレクトリを指定しなければなりません。

path 引数には、次のようにドライブも指定することができますが、

chdir("a:\\BC");

このメソッドは、そのドライブ上の現在のディレクトリを変更するのみで、ドライブまでは変更できません。

  • Windows では、現在のプロセスのみに効果があります。

戻り値

正常に終了した場合、chdir は、値 0 を返します。そうでなければ、値 -1 が返され、グローバル変数 errno には次の値が設定されます

ENOENT

パスまたはファイル名が見つからない

#include <stdio.h>
#include <stdlib.h>
#include <dir.h>
char old_dir[MAXDIR];
char new_dir[MAXDIR];
int main(void)
{
  if (getcurdir(0, old_dir))
  {
      perror("getcurdir()");
      exit(1);
  }
  printf("Current directory is: \\%s\n", old_dir);
  if (chdir("\\"))
  {
      perror("chdir()");
      exit(1);
  }
  if (getcurdir(0, new_dir))
  {
      perror("getcurdir()");
      exit(1);
  }
  printf("Current directory is now: \\%s\n", new_dir);
  printf("\nChanging back to original directory: \\%s\n", old_dir);
  if (chdir(old_dir))
  {
      perror("chdir()");
      exit(1);
  }
  return 0;
}

移植性

POSIX Win32 ANSI C ANSI C++

chdir

+

+

_wchdir

NT のみ