//领会指针和其它内存操作的技巧
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 str;
}
if( (p+len-str) > tt)//len大于pos后剩余的字符个数,只需对pos位置赋 '\0',因为超出长度相当于删除后面所有的字符
{
*p = '\0';
return str;
}
while (*p && *(p+len) )//len小于或等于pos后剩余的字符个数,删除中间len个字符
{
*p = *(p+len);//通过指针直接修改
p++;
}
*p = '\0';
return str;
}