首頁 > 後端開發 > C++ > 如何檢查 C 字串是否以特定字串結尾?

如何檢查 C 字串是否以特定字串結尾?

Susan Sarandon
發布: 2024-10-27 18:53:30
原創
657 人瀏覽過

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

找出以 C 結尾的字串

判斷字串是否以另一個字元序列結尾是程式設計中的常見任務。在 C 中,可以使用 std::string::compare 方法輕鬆實現此功能。

解決方案:

驗證末尾是否存在結束字串對於完整字串,我們需要將 fullString 的最後 n 個字元與結束字串進行比較。這是執行此任務的函數:

<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>
登入後複製

解釋:

  • 檢查 fullString 是否足夠長以包含結尾。
  • 如果是這樣,則使用 Compare 將 fullString 的最後 n 個字元(其中 n 是結尾的長度)與結尾字串進行比較。
  • 如果比較傳回 0,則字串相同,且函數傳回真。否則,它會傳回 false。

用法範例:

在提供的main 函數中,我們使用各種字串和結束字串測試hasEnding 函數:

<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>
登入後複製

輸出:

true
false
false
true
登入後複製

以上是如何檢查 C 字串是否以特定字串結尾?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板