>  기사  >  백엔드 개발  >  C 문자열이 특정 문자열로 끝나는지 확인하는 방법은 무엇입니까?

C 문자열이 특정 문자열로 끝나는지 확인하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-10-27 18:53:30576검색

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이 끝 부분을 포함할 만큼 긴지 확인하세요.
  • 그렇다면 비교를 사용하여 fullString의 마지막 n개 문자(여기서 n은 끝의 길이)를 끝 문자열과 비교합니다.
  • 비교 결과가 0을 반환하면 문자열은 동일하며 함수는 true를 반환합니다. 그렇지 않으면 false를 반환합니다.

사용 예:

제공된 기본 함수에서 다양한 문자열과 끝 문자열을 사용하여 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.