c - 为什么我的程序没有将字符串 a 的内容复制到字符串 b?相反,它打印一些垃圾值
问题描述
任务是询问用户从哪个字符到他想要创建另一个字符串的位置。
int main()
{
char a[]="Working with stirng is fun";
printf("%s",a);
int s,e,j=0;
scanf("%d%d",&s,&e);
char b[e-s+2];
for(int i=s-1;i<=e-1;i++){
a[j]=b[i];
j++;
}
a[j]='\0';
printf("%s",b);
}
例如:如果用户输入 4 和 7,则输出应为“king”。
解决方案
您似乎试图复制 to 的一部分a
,b
但实际上是分配给a
.