Comment fonctionne l'implémentation de strchr

J'ai essayé d'écrire ma propre mise en œuvre de la strchr() la méthode.

Il ressemble maintenant à ceci:

char *mystrchr(const char *s, int c) {
    while (*s != (char) c) {
        if (!*s++) {
            return NULL;
        }
    }
    return (char *)s;
}

La dernière ligne était à l'origine

return s;

Mais cela n'a pas fonctionné parce que s est const. J'ai trouvé qu'il doit être jeté (char *), mais honnêtement, je ne sais pas ce que je fais là 🙁 quelqu'un Peut m'expliquer?

source d'informationauteur Marc