There are some posts concerning std::string::find (like [this one here](https://stackoverflow.com/questions/4299605/problem-with-stdstringfind) and [this one too](https://stackoverflow.com/questions/44488093/stdstringfind-always-returns-stringnpos-even)) but I have a somewhat different situation:

```
#include <string>
#include <stdio.h>

int main(int argc, char **argv)
{
    std::string haystack = "ab\\x10c\200\\x00\\x00\\x00\\x00";
    std::string needle   = "\\x00";

    printf("first index is %d\n",(int) haystack.find(needle));

    return 0;
}

```

According to the values I'm wondering why 8 is returned:

I guess "\200" is counted as 1 character (?)
Can I make `find` treat `"\\x10"` as 1 character too?