This function finds the first character in the string s1 that matches any character specified in s2 (It excludes terminating null-characters).
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.
#include <stdio.h>
#include <string.h>
int main()
{
char s1[] = "geeksforgeeks" ;
char s2[] = "app" ;
char s3[] = "kite" ;
char * r, *t;
r = strpbrk (s1, s2);
if (r != 0)
printf ( "First matching character: %c\n" , *r);
else
printf ( "Character not found" );
t = strpbrk (s1, s3);
if (t != 0)
printf ( "\nFirst matching character: %c\n" , *t);
else
printf ( "Character not found" );
return (0);
}
|
Output:
Character not found
First matching character: e
Practical Application
This function can be used in game of lottery where the person having string with letter
coming first in victory wins, i.e. this can be used at any place where first person wins.
#include <stdio.h>
#include <string.h>
int main()
{
char s1[] = "victory" ;
char s2[] = "a23" ;
char s3[] = "i22" ;
char * r, *t;
r = strpbrk (s1, s2);
t = strpbrk (s1, s3);
if (r != 0)
printf ( "Congrats u have won" );
else
printf ( "Better luck next time" );
if (t != 0)
printf ( "\nCongrats u have won" );
else
printf ( "Better luck next time" );
return (0);
}
|
Output:
Better luck next time
Congrats u have won
Last Updated :
18 Sep, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...