找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2071|回复: 0
收起左侧

strpbrk函数实现及简单使用

[复制链接]
ID:51090 发表于 2014-9-24 22:24 | 显示全部楼层 |阅读模式
//:Vc++6.0  String  strpbrk函数
//功能:顺序在字符串str1中搜寻与str2中字符的第一个相同字符
//参数:str1 字符串1   str2 字符串2
//返回值:返回找到字符串的字符
#include<stdio.h>

const char *strpbrk(const char *str1, const char *str2);

int main()
{

char str[] = "This is a sample string";
char key[] = "aeiou";
const char * pch;
printf ("Vowels in '%s': ",str);
pch = strpbrk(str, key);

while (pch != NULL)
{
printf ("%c " , *pch);
pch = strpbrk(pch+1,key);
}
printf ("\n");

return 0;
}

const char *strpbrk(const char *str1, const char *str2)
{
if (str1 == NULL || str2 == NULL)
{
perror("str1 or str2");
return NULL;
}
const char *temp1 = str1;
const char *temp2 = str2;

while (*temp1 != '\0')
{
temp2 = str2; //将str2 指针从新指向在字符串的首地址
while (*temp2 != '\0')
{
if (*temp2 == *temp1)
return temp1;
else
temp2++;
}
temp1++;
}
return NULL;
}

//在vc++6.0中的运行结果为:Vowels in 'This is a sample string': i i a a e i
//注:和 strcspn函数 相似//:~

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表