C中scanf(“%s”,&i);i是变量会发生什么情况
比如下面这个代码两个输出为什么一样?
char a,b,c,d;
scanf("%s",&b);
printf("%c%c%c%c",a,b,c,d);
printf("%c%c%c%c",c,b,a,d);
1.你的标题与补充不符
2,你的程序能运行是运气
你的b是字符型,它只能容纳1个字符,而你的%s,若输入一个字符,它至少要占两个空间,所以内存溢出了
而实际中,你若输入sadf,若你的编译器或系统在a,b,c,d前面还有未用的空间,那么结果肯定的是
b='s'
a='a'
而c,d就是随机的了(你的结果只是巧合)
下一篇:电脑无法录入声源(直截了当)
上一篇:麻烦各位大佬看看是什么问题
热门标签: