-1
我有以下代码:Scanf搞乱了我的char数组?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int i=0;
char x[]="q";
char b[]="f";
printf("Enter a letter:");
scanf(" %s", x);
while(i<5)
{
printf("%c\n", x[i]);
i++;
}
i=0;
while(i<5)
{
printf("%c\n", b[i]);
i++;
}
return 0;
}
有人可以解释为什么
char
阵列b
不打印出来?
我只是得到一个小小的白色盒子。同样的事情发生在我有scanf
读输入到两个阵列(x
和b
)的另一个程序中。即如果我在输入中键入'x',则这两个数组都变为x!
有些人可以帮助我理解为什么发生这种情况,并帮助我找到解决这个非常严重的问题。
请学习如何使用调试器,以便能够至少在未来尝试帮助您的自我。 – alk