从字符串的指定位置开始,删除其指定长度字符

/*

面试例题:从字符串的指定位置开始,删除其指定长度字符。

考点:字符串综合编程能力。

解析

根据题意,假设一个字符串"abcdefg",从第2个字符开始(索引为1),删除两个字符。删除后的字符串是"adefg"。

*/

char* DeleteChars(char* str,int pos,int len)
{
 char *p=str+pos-1;   // 指向pos位置字符
 int tt=strlen(str);  //计算字符长度
 if(pos<1 ||(p-str)>tt)
 {
  return;
 }
 if((p+len-str)>tt)
 {
  *p='\0';
  return str;
 }

 while(*p&&*(p+len))
 {
  *p=*(p+len);
  p++;
 }
 *p='\0';
 return str;
}

posted @ 2013-09-21 09:30  小菜美妞成长中  阅读(1076)  评论(0编辑  收藏  举报