How to remove characters that are included in second string from the first string in C

1 Answer

0 votes
#include <stdio.h>
#include <string.h>

char* remove_chars(char* s, char* chars) {
    int i = 0, internal_i = 0;

    while (*(s + i)) {
        char ch = *(s + i);
        if (!strchr(chars, ch)) {
            *(s + internal_i) = *(s + i);
            internal_i++;
        }
        i++;
    }

    *(s + internal_i) = '\0';

    return s;
}

int main(void)
{
    char s[] = "c programming language";
    char chars[] = "rog";

    printf("%s\n", remove_chars(s, chars));

    return 0;
}




/*
run:

c pammin lanuae

*/

 



answered Feb 3, 2019 by avibootz
edited Aug 29, 2022 by avibootz
...