_searchstr, _wsearchstr
stdlib.h:インデックス への移動
ヘッダーファイル
stdlib.h
カテゴリ
その他のルーチン
プロトタイプ
void _searchstr(const char *file, const char *ipath, char *buf);
void _wsearchstr(const wchar_t *file, const wchar_t *ipath,wchar_t *pathname);
説明
ディレクトリのリストからファイルを検索します。
_searchstr は,文字列 ipath で指定されたパスにしたがってファイルを検索します。
_searchstr は,最初に現在のドライブの現在のディレクトリでファイルを検索します。そこにファイルが見つからなければ,ファイルが見つかるか,すべてのパスを調べ終わるまで,ipath 内の各ディレクトリが検索されます。ipath 内のディレクトリは,セミコロンで区切る必要があります。
ファイルが検索された場合は,buf が指すバッファに絶対パス名が格納されます。この文字列は,ファイルにアクセスするための呼び出し(fopen,exec... など)で使用できます。このバッファは,考えられるファイル名を格納できるだけの十分な大きさがあると仮定されます。stdlib.h で定義されている定数 _MAX_PATH がファイル名の最大サイズです。ファイルが検索されなかった場合は,(1 つのヌル文字からなる)空の文字列が buf に格納されます。
戻り値
なし。
例
#include <stdio.h> #include <stdlib.h> char buf[_MAX_PATH]; int main(void) { /* ILINK32.EXE を検索します */ _searchstr("ILINK32.EXE", getenv("PATH"), buf); if (buf[0] == '\0') printf ("ILINK32.EXE not found\n"); else printf ("ILINK32.EXE found in %s\n", buf); return 0; }
移植性
POSIX | Win32 | ANSI C | ANSI C++ | |
---|---|---|---|---|
_searchstr |
+ |
|||
_wsearchstr |
NT のみ |