finaly i did it. thanks for ur advices and clues u have given to me. but i made one more instruction. i am sending it along with this char* rmstr(char* searchstring, char* morphem) { char* tmp; char* resultstring = (char *) malloc(strlen(searchstring)); *resultstring = '\0'; while( ( tmp = strstr(searchstring, morphem))!='\0')// ) { int len=strlen(searchstring)-strlen(tmp); //...; char* result = (char *) malloc(len);//...; strncpy(result,searchstring,len);//...); searchstring = tmp+strlen(morphem);//(...); *(result+len) = '\0'; strcat(resultstring,result);//...); free (result); } if (searchstring!='\0') strcat(resultstring,searchstring); free (resultstring); return resultstring; } thanks for make me to study pointers. shamnar