この記事では、C言語でカレントディレクトリを取得する方法と変更する方法について説明します。
目次から探す
C言語でのカレントディレクトリの取得方法
C言語でカレントディレクトリを取得する方法にはいくつかの方法がありますが、ここでは主にgetcwd関数
を使用した方法について説明します。
getcwd関数で取得する
getcwd関数
は、現在のカレントディレクトリのパスを取得するための関数です。
この関数は、unistd.hヘッダーファイル
に宣言されています。
以下に、getcwd関数
を使用してカレントディレクトリを取得するサンプルコードを示します。
#include <stdio.h>
#include <unistd.h>
int main() {
char path[256]; // パスを格納するための配列
if (getcwd(path, sizeof(path)) != NULL) {
printf("カレントディレクトリ: %s\n", path);
} else {
perror("getcwd() error");
return 1;
}
return 0;
}
上記のコードでは、getcwd関数
を呼び出してカレントディレクトリのパスを取得し、その結果をpath
配列に格納しています。
もしgetcwd関数
が正常に実行された場合は、printf関数
を使ってカレントディレクトリのパスを表示します。
もしエラーが発生した場合は、perror関数
を使ってエラーメッセージを表示します。
カレントディレクトリの変更方法
C言語でカレントディレクトリを変更するには、chdir関数
を使用します。
この関数もunistd.hヘッダーファイル
に宣言されています。
以下に、chdir関数
を使用してカレントディレクトリを変更するサンプルコードを示します。
#include <stdio.h>
#include <unistd.h>
int main() {
if (chdir("/path/to/directory") == 0) {
printf("カレントディレクトリを変更しました。\n");
} else {
perror("chdir() error");
return 1;
}
return 0;
}
上記のコードでは、chdir関数
を呼び出して指定したディレクトリにカレントディレクトリを変更しています。
もしchdir関数
が正常に実行された場合は、printf関数
を使ってメッセージを表示します。
もしエラーが発生した場合は、perror関数
を使ってエラーメッセージを表示します。
以上がC言語でのカレントディレクトリの取得方法と変更方法の説明です。
getcwd関数
とchdir関数
を使うことで、プログラム内でカレントディレクトリを取得したり変更したりすることができます。