编写代码实现strpbrk()函数。

自己动手编写代码实现strpbrk()函数。strpbrk()函数是干什么的呢?
strpbrk()函数解释如下
strpbrk是在源字符串(s1)中找出最先含有搜索字符串(s2)中任一字符的位置并返回,若找不到则返回空指针。
返回s1中第一个满足条件的字符的指针,如果没有匹配字符则返回空指针NULL。

题目要求
请编写一个函数,它在一个字符串中进行搜索,查找所有在一个给定字符集合中出现的字符。这个函数的原型应该如下:
char *find_char(char const *source,char const *chars);

实现方式如下:

char const *find_char(char const *source,char const *chars)
{
    char const *stringChars  = NULL;//存储我们要查找的字符串
    if(source == NULL || chars ==NULL)
    {
        return NULL;
    }
    while(*source!='\0')
    {
        stringChars = chars;//始终将stringChars初始化为chars
        while(*stringChars != '\0')
        {
            if(*source==*stringChars)
            {
                return (char *)source;
            }
            stringChars++;
        }
        source++;
    }
}

测试:

#include<stdio.h>

int main()
{
    char *s1="ABCDEF";
    char *s2="HRBFG";
    char const *p;
    p=find_char(s1,s2);
    if(p)
    {
        printf("%s\n",p);
    }
    else
    {
        printf("Not Found!\n");
    }
    return 0;
}

输出结果:

BCDEF
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值