strpbrk

文字列から文字群が見つかった位置を求める

【書式】
#include <string.h>
char *strpbrk(const char *s1, const char *s2);

【説明】
文字列 s1 で、文字群 s2 中のいずれかの文字が見つかった最初の位置(ポインタ)を返却します。

【引数】
const char *s1 : 検索対象文字列
const char *s2 : 文字群

【戻り値】
見つかった時:文字列 s1 で、文字群 s2 が見つかった最初の位置(ポインタ)
見つからなかった時:NULL

【使用例】
#include <stdio.h>
#include <string.h>
#include <alloc.h>

int main(void)
{
	char str[] = "abcdefgabcdefghij", *p;
	char search[21];

	printf("文字群を入力しなさい。\n");
	scanf("%20s", search);
	
	p = strpbrk(str, search);
	if (p != NULL) {
		printf("文字群%sは文字列%sの%d番目にあります。\n", search, str, p-str);
		printf("以降の文字列は%sです。\n", p);
	}
	else
		printf("文字群%sは文字列%sに見つかりませんでした。\n", search, str);

	return 0;
}
【実行結果例1】
文字群を入力しなさい。ghsp
文字群ghspは文字列abcdefgabcdefghijの6番目にあります。
以降の文字列はgabcdefghijです。
【実行結果例2】
文字群を入力しなさい。sp
文字群spは文字列abcdefgabcdefghijに見つかりませんでした。

※緑字はキーボードからの入力

戻る


banner
初心者のためのポイント学習C言語」
Copyright(c) 2000-2004 TOMOJI All Rights Reserved