首页 > 解决方案 > 为什么我的程序没有将字符串 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”。

标签: cstring

解决方案


您似乎试图复制 to 的一部分ab但实际上是分配给a.


推荐阅读