Comment analyser les cordes avec Strpbrk en programmation C?

Comment analyser les cordes avec Strpbrk en programmation C?

Une tâche fondamentale dans la programmation est l'analyse des chaînes, et la programmation C offre plusieurs fonctions pour y parvenir. Le strpbrk () La fonction est l'une des fonctions utilisées pour analyser les chaînes. Cette fonction polyvalente peut être utilisée pour rechercher la première apparition de tout caractère dans une séquence de caractères répertoriés dans une variable de chaîne. Cet article donnera une description approfondie de la façon d'analyser les chaînes en C en utilisant le strpbrk () fonction.

Comment analyser les cordes avec strpbrk () dans la programmation C

La syntaxe du strpbrk () La fonction est la suivante:

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


La fonction nécessite deux arguments; STR1 et STR2, le texte à rechercher et l'ensemble des caractères à rechercher, respectivement. Cette fonction renvoie le pointeur du personnage dans str1.La fonction renvoie null s'il n'y a pas de correspondance.

Maintenant, regardons un exemple de comment utiliser strpbrk () Pour analyser une chaîne.

#inclure
#inclure
int main()
Char Str [50] = "Cet article est écrit pour LinuxHint";
char * match = strpbrk (str, "o");
si (faire correspondre != Null)
printf ("La première occurrence de 'O' est en position% ld \ n", correspond - str);
autre
printf ("Aucun match trouvé.\ n ");

retour 0;


Dans le code ci-dessus, Str et «O» sont les deux arguments que nous transmettons au strpbrk () fonction. La fonction recherche la première instance de la lettre «o» dans la chaîne str. La fonction renvoie une référence à l'emplacement dans la chaîne où le match a été découvert. La position du match dans la chaîne est ensuite déterminée à l'aide de l'arithmétique du pointeur.

Sortir


Le strpbrk () La fonction peut également être utilisée pour analyser une chaîne pour plusieurs caractères. Par exemple:

#inclure
#inclure
int main()
Char Str [50] = "Cet article est écrit pour LinuxHint";
char * match = strpbrk (str, "aeiou");
si (faire correspondre != Null)
printf ("La première occurrence de l'une des voyelles est en position% ld \ n", match - str);
autre
printf ("Aucun match trouvé.\ n ");

retour 0;


Dans ce cas, la fonction recherche la première occurrence de toute voyelle dans la chaîne. Si une correspondance est trouvée, la fonction renvoie un pointeur à la position dans la chaîne où le match a été trouvé.

Sortir


Il est important de garder à l'esprit que strpbrk () recherche la première instance des caractères de l'ensemble car il scanne la chaîne de gauche à droite. Si vous souhaitez trouver la dernière instance d'un caractère dans une chaîne, vous pouvez utiliser le strrchr () fonction.

Conclusion

En programmation C, le strpbrk () La fonction est une fonction utile pour l'analyse des chaînes. Il vous permet de rechercher n'importe quel caractère dans un ensemble de caractères dans chaque chaîne où il apparaît pour la première fois. Vous pouvez créer des programmes plus efficaces et efficaces en comprenant la syntaxe et l'utilisation de cette fonction.