#include <stdio.h>
#include <string.h>
int main()
{
long k;
int i;
char *pos;
char *str = "xybaccakmccazabc";
printf("対象とする文字列 %s\n", str);
/*
文字の探索
*/
pos = strchr(str, 'a');
k = (long)pos - (long)str + 1;
printf(" 文字の探索\n");
printf(" 文字 a は最初から %ld 文字目にあります\n", k);
/*
文字の後方からの探索
*/
pos = strrchr(str, 'a');
k = (long)pos - (long)str + 1;
printf(" 文字の後方からの探索\n");
printf(" 文字 a は最初から %ld 文字目にあります\n", k);
/*
文字群の中のどれかの文字の探索
*/
pos = strpbrk(str, "uvwk");
k = (long)pos - (long)str + 1;
printf(" 文字群「uvwk」に含まれる文字の探索\n");
printf(" 文字 %c が最初から %ld 文字目にあります\n", *pos, k);
/*
文字列の探索
*/
pos = strstr(str, "cc");
k = (long)pos - (long)str + 1;
printf(" 文字列の探索\n");
printf(" 文字列 cc は最初から %ld 文字目にあります\n", k);
/*
指定された文字群以外からなる文字列の長さ
*/
i = strcspn(str, "abc");
printf(" 文字群「abc」以外からなる文字列の長さ\n");
printf(" 最初から %d 文字目までに a,b,c の文字は含まれません\n", i);
/*
指定された文字群からなる文字列の長さ
*/
i = strspn(str, "abcxy");
printf(" 文字群「abcxy」からなる文字列の長さ\n");
printf(" 最初から %d 文字目までが a,b,c,x,y でなっています\n", i);
return 0;
}