//領會指針和其它記憶體操作的技巧
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;
}