目次 - API(機能別) - ファイルシステム - SDL_GetBasePath

SDL_GetPrefPath

「プリファレンスディレクトリ」を得る. そこにアプリケーションは個人のファイル(設定やゲームの保存など)を書き込む. このディレクトリはユーザとアプリケーションごとに固有である.

構文

char* SDL_GetPrefPath(const char* org, const char* app)

引数

org組織名
appアプリケーション名

戻り値

環境に依存した記述のユーザディレクトリのUTF-8文字列を戻す. 問題がある(ディレクトリの作成に失敗など)のときNULLを戻す.

パス名の末尾には, パスの区切り文字(Windowsならば'\', 他の環境ならば'/')があることが保障されている.

戻されたポインタはアプリケーションが管理する必要がある. 使った後はポインタに対してSDL_free()を呼ぶこと.

サンプルコード

char *pref_path = NULL;

void InitializePrefPath() {
    char *base_path = SDL_GetPrefPath("My Company", "My Awesome SDL 2 Game");
    if (base_path) {
        pref_path = base_path;
    } else {
        /* ゲームで情報を書かないようにする処理をここに書く */
    }
}

詳細

この関数が戻した場所のみ安全にファイルを書き込めるとみなすべきである. (書き込めるであろうSDL_GetBasePath()やその親ディレクトリには書き込むべきでない.)

orgとappはディレクトリの名前の一部になる. 次のルールに従うべきである.

バージョン

SDL 2.0.1以降

関連項目(関数)

SDL_GetBasePath

SDL Wikiへのリンク

SDL_GetPrefPath - SDL Wiki