How to check if string ends with .txt

后端 未结 11 1774
耶瑟儿~
耶瑟儿~ 2020-12-15 04:23

I am learning basic C++, and right now I have gotten a string from a user and I want to check if they typed the entire file name (including .txt) or not. I have the string,

11条回答
  •  南方客
    南方客 (楼主)
    2020-12-15 05:02

    Here is the "fully self-written" solution:

    bool isEndsWith(const std::string& pstr, const std::string& substr) const
    {
        int tlen = pstr.length();
        int slen = substr.length();
    
        if(slen > tlen)
            return false;
    
        const char* tdta = pstr.c_str();
        const char* sdta = substr.c_str();
    
        while(slen)
        {
            if(tdta[tlen] != sdta[slen])
                return false;
    
            --slen; --tlen;
        }
        return true;
    }
    

提交回复
热议问题