我想删除用户在程序中给它的数字的字符,但它会删除下一个字符,这是因为0是在我的代码中计算的,我如何更改准确删除数字的代码用户想要?删除字符串中的字符
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char *argv[]) {
char a[30];
int n,i;
printf("enter a string\n");
gets(a);
printf("enter position you want to delete\n");
scanf("%d",&n);
for(i=1;a[i];i++);
strcpy(&a[n],&a[n+1]);
printf("the result is:\n");
puts(a);
getch();
return 0;
}
您需要使用缩进! – zoska
您的源和目标的strcpy重叠。您的for循环也不会完成任何操作,并且您没有检查用户输入号码的范围。 –