c++ - 二维字符数组中的字符设置不正确

标签 c++ arrays

我正在玩,我创建了二维字符数组。现在,当我尝试将字符放入该数组时,我遇到了问题。

#include <iostream>
#include <string>

using namespace std;

int main()
{
    char field[8][8];

    for(int i=0;i<8;i++)
    {
    for(int j=0;j<8;j++)
    {
    if(field[i][j]==field[2][6])
    {
    field[i][j]='X';
    }
    else
    {
    field[i][j]='-';    
    }
    cout<<field[i][j];  
    }
    cout<<endl;
    }

return 0;
}

但这给了我:

cmd

我只希望 X 位于 field[2][6],而不是从 field[2][0]字段[2][6]。我在这里做错了什么?

最佳答案

if(field[i][j]==field[2][6]) 正在检查 field[i][j] 的内容是否为与field[2][6]相同。它不是在检查位置。如果您只想 field[2][6] 具有 X 那么您可以使用

if (i == 2 && j == 6)
{
    field[i][j]='X';
}
else
{
    field[i][j]='-';    
}

关于c++ - 二维字符数组中的字符设置不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35211415/

相关文章:

c++ - 为什么试图存储指向函数的指针不明确

c - 如何对二维数组使用memset?

arrays - 如何在 golang 运行时动态设置数组的索引?

c++ - 为什么 map::find 需要我的参数不是常量?

c++ - 遍历 QSqlQuery 结果集的最有效方法?

c++ - 将派生类构造函数分配给基类指针

c# - 如何根据某个数字重复特定顺序的数组元素?

javascript - 循环内的逻辑在 ReactJs 上不起作用

java - 无法在java中使用循环分配数组值

c++ - VC++ 'Generating Code' 是什么意思?