Maison >développement back-end >C++ >Comment déterminer si une chaîne possède un suffixe spécifique en C ?
Détermination des suffixes de chaîne en C
En C, déterminer si une chaîne possède un suffixe spécifique nécessite une approche efficace et fiable. Pour répondre à ce besoin, l'article explore un moyen efficace de vérifier ces informations.
Identifier les fins de chaîne
Pour déterminer si une chaîne se termine par une sous-chaîne particulière, C propose la fonction string::compare(). Cette méthode permet la comparaison d'une plage spécifiée de caractères dans une chaîne avec une autre chaîne fournie.
Implémentation
L'extrait de code suivant démontre l'utilisation de string::compare () pour l'identification du suffixe :
<code class="cpp">#include <iostream> bool hasEnding(std::string const &fullString, std::string const &ending) { if (fullString.length() >= ending.length()) { return (0 == fullString.compare(fullString.length() - ending.length(), ending.length(), ending)); } else { return false; } }</code>
Cette fonction accepte deux paramètres de chaîne, la chaîne complète à vérifier et la terminaison potentielle. Il calcule si la longueur de la chaîne complète atteint ou dépasse la longueur de la fin, puis compare les parties pertinentes de la chaîne complète avec la fin à l'aide de string::compare().
Exemple d'utilisation
L'exemple fourni démontre l'application de la fonction hasEnding() :
<code class="cpp">int main() { std::string test1 = "binary"; std::string test2 = "unary"; std::string test3 = "tertiary"; std::string test4 = "ry"; std::string ending = "nary"; std::cout << hasEnding(test1, ending) << std::endl; std::cout << hasEnding(test2, ending) << std::endl; std::cout << hasEnding(test3, ending) << std::endl; std::cout << hasEnding(test4, ending) << std::endl; return 0; }</code>
La sortie de ce code affiche les résultats de les comparaisons de suffixes pour les chaînes de test fournies.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!