## 【我解C語言面試題系列】010 從相應位置開始刪除指定字符串的相應個字符
**從相應位置開始刪除指定字符串的相應個字符**
假設一個字符串 " abcdefg ",那么請你寫一個函數,該函數將會從指定位置開始,刪除指定長度的字符。如:要從第二個開始,刪除2兩個字符。則刪除后的字符串是“adefg”。
~~~
char *DeleteTheCharacters(char *str,int pos,int len)
{
?? char *p = str+pos-1;
?? int tt = strlen(str);
??
?? // If over the p && (p + len) over the length of str
?? if( pos < 1)???????? return str;
?? if( (p-str) > tt )?? return str;
?? if( (p+len-str) > tt)
?? {
?? ??? *p = '/0';
????? return str;
?? }
??
?? //Delete the len characters
?? while(*p && *(p+len))
?? {
????? *p = *(p+len);
????? p++;
?? }
?? *p = '/0';
??
?? return str;
}
~~~