error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
-> const를 붙이거나 난 무조건 const char *가아닌 그냥 char *로 받아야 한다면, #include <string.h>를 #include <cstring>로 변경해주세요.
권장하는 것은 아니지만, 정 안 되면 그냥 구현해서 사용하면 됩니다:
char *mystrrchr(const char *s, int ch)
{
char *start = (char *) s;
while (*s++);
while (--s != start && *s != (char) ch);
if (*s == (char) ch) return (char *) s;
return NULL;
}
char *mystrchr(const char *str, int c) {
while (*str != '\0') {
if (*str == c) {
return (char *)str;
}
str++;
}
return NULL;
}
int mystrlen(char *s) {
char *p = s;
while (*p++ != '\0');
return p - s;
}
char *mystrstr(const char *s1, const char *s2){
int i;
if(*s2=='\0')
return (char *)s1;
else{
for(;*s1;s1++){
if(*s1==*s2){
for(i=1;*(s1+i)==*(s2+i);i++);
if(i==mystrlen((char *)s2))
return (char *)s1;
}
}
return NULL;
}
}