您好我正在尝试为我的学院项目创建一个Tatch Toe Game游戏, 游戏的棋盘尺寸需要使用C ++中的2D数组进行GENERIC。 所以我在初始化数组中的默认数字(位置)标识符时遇到了麻烦
for (int i = 0; i < SIZE; i++)
{
for (int j = 0; j < SIZE; j++)
{
Boards[i][j] = initial++;
}
}
for (int i = 0; i < SIZE; i++)
{
for (int j = 0; j < SIZE; j++)
{
if (Boards[i][j] < 10) cout << " " << Boards[i][j] << " | ";
else cout << Boards[i][j] << " | ";
}
cout << endl;
}
因为变量'initial'是一个整数,我必须在循环中递增它。我不太确定如何将它保存在char数组(BOARD)中Board需要char才能显示X,O
答案 0 :(得分:1)
现在您已经发布了完整的代码,我可以在这一行看到问题而另一个看起来像这样:
cout << Boards[i][j] << " | ";
由于Boards[i][j]
的类型是char
,C ++标准库只会将该char发送到您的终端,终端将尝试将其解释为ASCII字符。您需要先将其转换为int
,以便C ++标准库为您正确格式化它:
cout << (int)Boards[i][j] << " | ";