#include
void Delete(char ch[],int n)
{
int len = strlen(ch);//得到字符串的长度(自带函数在#include中)
for(int i=0;i
if(i>=n)
ch[i-1]=ch[i];//把n-1后的前面字符全部替换为为后面的字符
char *str = ch;//用str拷贝ch
str[len-1] = '\0';//把最后一位变为字符串结束标志,因此导致内存泄漏,因为后面还有一个'/0'
ch = new char[len-1];//新开辟一块空间
for(int i;i<=len-1;i++)//把str"/0/0"第二个/0之前的字符全部拷贝到ch中
ch[i] = str[i];
delete []str;//把之前的空间释放
}
int main()
{
char ch[]="helloworld";
Delete(ch,5);
std::cout<
return 0;
}