Problem
Remove specified characters from a string
Solution
#include <iostream>
using namespace std;
/**************************************************
* str -- string
* dstr -- a set of characters to remove from string
**************************************************/
char* del_ch_in_str(char *str, char *dstr)
{
if(str == NULL || dstr == NULL){
return str;
}
char *p1 = str;
char *p2 = dstr;
while(*p1++ != '\0');
p1--;
while(p1 >= str){
p2 = dstr;
while(*p2 != '\0'){
if(*p2 == *p1){
char *p3 = p1;
while(*p3 != '\0'){
*p3 = *(p3 + 1);
p3 ++;
}
break;
}
p2 ++;
}
p1--;
}
}
int main(int argc, char* argv[])
{
char str[] = "askdaskaskdaserwdagadhjkg";
char dstr[] = "ask" ;
del_ch_in_str(str, dstr);
cout << str << endl;
return 0;
}
Output
dderwdgdhjg