问题遇到的现象和发生背景
删除字符串中指定位置的字符
用代码块功能插入代码,请勿粘贴截图
int delet(char* a, int n) {
int len = strlen(a);
if (a[n] != '\0') {
for (int i = n - 1; i < len; i++) {
*(a + i) = *(a + i + 1);
}
*(a + len) = '\0';
return *(a + n - 1);
}
else
return 0;
}
int main()
{
char *s="(abc))a(ac)";
delet(s, 1);
printf("%s",s );
}
运行结果及报错内容
在调用的时候发生了这样的报错
请问这是什么原因导致的,以及应该怎么解决呢