Heim > Backend-Entwicklung > C++ > Hauptteil

Wie überprüfe ich, ob ein C-String mit einem bestimmten String endet?

Susan Sarandon
Freigeben: 2024-10-27 18:53:30
Original
575 Leute haben es durchsucht

How to Check if a C   String Ends with a Specific String?

String-Enden mit C finden

Bestimmen, ob ein String mit einer anderen Zeichenfolge endet, ist eine häufige Aufgabe in der Programmierung. In C kann diese Funktionalität einfach mit der Methode std::string::compare erreicht werden.

Lösung:

Um zu überprüfen, ob die Endzeichenfolge am Ende vorhanden ist Um die vollständige Zeichenfolge zu erhalten, müssen wir die letzten n Zeichen der vollständigen Zeichenfolge mit der Endzeichenfolge vergleichen. Hier ist eine Funktion, die diese Aufgabe ausführt:

<code class="cpp">bool hasEnding(const std::string& fullString, const std::string& ending) {
    if (fullString.length() >= ending.length()) {
        return (0 == fullString.compare(fullString.length() - ending.length(), ending.length(), ending));
    } else {
        return false;
    }
}</code>
Nach dem Login kopieren

Erklärung:

  • Überprüfen Sie, ob der vollständige String lang genug ist, um die Endung zu enthalten.
  • Wenn ja, vergleichen Sie die letzten n Zeichen des vollständigen Strings (wobei n die Länge des Endes ist) mit dem Endstring mithilfe von Compare.
  • Wenn der Vergleich 0 zurückgibt, sind die Strings und die Funktion identisch gibt true zurück. Andernfalls wird false zurückgegeben.

Beispielverwendung:

In der bereitgestellten Hauptfunktion testen wir die hasEnding-Funktion mit verschiedenen Zeichenfolgen und einer Endzeichenfolge:

<code class="cpp">int main() {
    // Test strings
    std::string test1 = "binary";
    std::string test2 = "unary";
    std::string test3 = "tertiary";
    std::string test4 = "ry";

    // Ending string
    std::string ending = "nary";

    // Print results
    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>
Nach dem Login kopieren

Ausgabe:

true
false
false
true
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie überprüfe ich, ob ein C-String mit einem bestimmten String endet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!