郭心语 发表于 2021-3-28 11:41:02

啪啪啪

int n,i;
        char a;
       
        printf("字符位数:");
        scanf("%d",&n);
       
        printf("输入字符:");
        getchar();
        for(i=0;i<n;i++);
        {
                scanf("%c",&a);
        }
        a='\0';
        printf("字符为:%s\n",a);
        为啥输出的为乱码?

ZaraLeon 发表于 2021-3-28 15:04:20

说明一下,不能这样定义char a,数组里面n+1必须为已知数才能分配空间。

郭心语 发表于 2021-3-28 20:41:21

ZaraLeon 发表于 2021-3-28 15:04
说明一下,不能这样定义char a,数组里面n+1必须为已知数才能分配空间。

感谢回答。
问题已经解决,是在for循环后多加了;
这个代码是抄的视频里的,n+1其实我也没看懂,
页: [1]
查看完整版本: 啪啪啪