我都是C新手,只是想尝试一些编程以获得乐趣!我的第一个想法是创建一个Tic-Tac-Toe游戏。在下面的代码中,我试图生成一个字段。它在一定程度上起作用,但是当我测试它时,条目feld[1][0]
和feld[2][0]
是空的。另外我不明白的是,如果我在一个条目中保存了更多的一个字母,例如xx,它就会在其他地方出现。我猜测这是C的节省空间分配问题。很高兴为任何反馈!c中有字符的数组
#include <stdio.h>
main()
{
int i,j;
char feld[3][3];
for(j=0; j<3; j++)
{
for(i=0; i<3; i++)
{
printf("\t %2i. column %2i. row: ", i+1, j+1);
scanf("%s", &feld[i][j]);
}
}
for(j=0; j<3; j++)
{
for(i=0; i<3; i++)
{
printf("\t %c", feld[i][j]);
}
printf("\n");
}
}
char数据单元只能存储一个字符因此被称为焦炭......如果你尝试“XX”写入字符就会溢出到下一个存储单元...再加上这就是'scanf'的特性(以'%s'作为第一个参数)将所有单元格从输入写入输出 – 2014-11-04 18:08:01