# V817. It is more efficient to search for 'X' character rather than a string.

The analyzer detected a function that looks for a character in a string and can be optimized.

Consider the following example of inefficient code:

    bool isSharpPresent(const std::string& str)
    {
      return str.find("#") != std::string::npos;
    }

In this code, it is better to use an overridden version of the 'find()' function that receives a character instead of a string.

Optimized code:

    bool isSharpPresent(const std::string& str)
    {
      return str.find('#') != std::string::npos;
    }

The following example also uses inefficient code that can be optimized:

    const char* GetSharpSubStr(const char* str)
    {
      return strstr(str, "#");
    }

In this code, it is better to use the function 'strchr()' to search for a character instead of a string:

    const char* GetSharpSubStr(const char* str)
    {
      return strchr(str, '#');
    }