/*
**C和指针,6.18 编程练习 1
**请编写一个函数,它在一个字符串中进行搜索,查找所有在一个给定字符集中出现的字符。......
**请不要使用任何操纵字符串的库函数;函数中任何地方都不应该使用下标引用
*/
#include <stdio.h>
char* FindChar(char const *source, char const *chars);
//主程序验证函数是否正确
int main()
{
//char* p = "ABCDEF";
//char* q = "RXCEF";
printf("请输入source:\n");
char a[1024], b[1024];
char* p = gets(a);
printf("请输入chars:\n");
char* q = gets(b);
char* res = FindChar(p, q);
if (res== NULL)
printf("Return is NULL\n");
else
printf("%c\n", *res);
return 0;
}
char* FindChar(char const *s, char const *chars)
{
if (s == NULL || chars == NULL)
return NULL;
while (*s)
{
const char* tmp = chars;
while (*tmp)
{
if (*s == *tmp)
return (char*)s;
else
tmp++;
}
s++;
}
return NULL;
}