名 前
strstr, strcasestr − 部 分 文 字 列 の 位 置 を 示 す
書 式
#include <string.h>
char *strstr(const char *haystack, const char *needle);
#define _GNU_SOURCE /* feature_test_macros(7) 参 照 */
#include <string.h>
char *strcasestr(const char *haystack, const char *needle);
説 明
strstr() 関 数 は 、 部 分 文 字 列 needle が 文 字 列 haystack 中 で 最 初 に 現 れ る 位 置 を 見 つ け る 。 文 字 列 を 終 端 ヌ ル バ イ ト ('\0') は 比 較 さ れ な い 。
strcasestr() 関 数 は strstr() 関 数 と 同 様 だ が 、 両 方 の 引 数 に 対 し て 大 文 字 小 文 字 を 無 視 す る 。
返 り 値
こ れ ら の 関 数 は 、 見 つ か っ た 部 分 文 字 列 の 開 始 を 指 す ポ イ ン タ ー を 返 し 、 も し 部 分 文 字 列 が 見 つ か ら な い 場 合 は NULL を 返 す 。
属 性
マ ル チ ス レ ッ デ ィ ン グ (pthreads(7) 参 照 )
strstr() 関 数 は ス レ ッ ド セ ー フ で あ る 。
strcasestr() 関 数 は 、 例 外 付 き の ス レ ッ ド セ ー フ で あ る 。 実 行 中 に setlocale(3) を 呼 び 出 し て ロ ケ ー ル を 変 更 し な い 限 り 、 マ ル チ ス レ ッ ド ア プ リ ケ ー シ ョ ン で 安 全 に 使 用 す る こ と が で き る 。
準 拠
strstr() 関 数 は C89 と C99 に 準 拠 し て い る 。 strcasestr() 関 数 は 非 標 準 拡 張 で あ る 。
関 連 項 目
index(3), memchr(3), memmem(3), rindex(3), strcasecmp(3), strchr(3), string(3), strpbrk(3), strsep(3), strspn(3), strtok(3), wcsstr(3)
こ の 文 書 に つ い て
こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。