此函数查找在字符串s1,在S2中指定的任何字符相匹配的第一个字符(它不包括终止空字符)。
Syntax :
char *strpbrk(const char *s1, const char *s2)
Parameters :
s1 : string to be scanned.
s2 : string containing the characters to match.
Return Value :
It returns a pointer to the character in s1 that
matches one of the characters in s2, else returns NULL.
// C code to demonstrate the working of
// strpbrk
#include
#include
// Driver function
int main()
{
// Declaring three strings
char s1[] = "geeksforgeeks";
char s2[] = "app";
char s3[] = "kite";
char* r, *t;
// Checks for matching character
// no match found
r = strpbrk(s1, s2);
if (r != 0)
printf("First matching character: %c\n", *r);
else
printf("Character not found");
// Checks for matching character
// first match found at "e"
t = strpbrk(s1, s3);
if (t != 0)
printf("\nFirst matching character: %c\n", *t);
else
printf("Character not found");
return (0);
}
输出:
Character not found
First matching character: e
实际应用
此函数可用于彩票游戏中有人带有字母的字符串
赢得胜利的第一名,即可以在第一人称获胜的任何地方使用。
// C code to demonstrate practical application
// of strpbrk
#include
#include
// Driver function
int main()
{
// Initializing victory string
char s1[] = "victory";
// Declaring lottery strings
char s2[] = "a23";
char s3[] = "i22";
char* r, *t;
// Use of strpbrk()
r = strpbrk(s1, s2);
t = strpbrk(s1, s3);
// Checks if player 1 has won lottery
if (r != 0)
printf("Congrats u have won");
else
printf("Better luck next time");
// Checks if player 2 has won lottery
if (t != 0)
printf("\nCongrats u have won");
else
printf("Better luck next time");
return (0);
}
输出:
Better luck next time
Congrats u have won
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。