《C与指针》习题6.18.1
题目:函数在一个字符串中进行搜索,查找所有在一个给定字符集合中出现的字符
函数原型:char *find_char( char const *source, char const *chars);
代码
#include <stdio.h>
#include <assert.h>
char *find_char( char const *source, char const *chars );
void main( void )
{
char *p = NULL;
p = find_char("hello_world","e");
if( NULL != p) printf("%c\n",*p);
return ;
}
/*查找字符串中的指定字符
**source:目标字符串 chars:源字符或者串
**返回 成功:匹配字符的地址 失败:NULL
*/
char *find_char( char const *source, char const *chars )
{
char const *paddr = source;
assert( paddr ); //检查地址有效性
while( *paddr != '\0' )
{
if( *paddr == *chars )
{
return (char *)paddr;
}
paddr++;
}
return NULL;
}
演示