这里的新手,在搜索二维数组时遇到了问题。我有一个3x3字符数组,它保存'1‘到'9’,就像一个抽搐脚趾板。对于测试,我硬编码它来搜索'5',希望它会返回'1‘行。不管发生什么,它都会返回'3‘。还有其他类似的帖子,但对于我所知道的关于c++的微乎其微的数量来说,它们都太高级了。这是我的数组:
char board[3][3] =
{
{ '1', '2', '3', }, // row 0
{ '4', '5', '6', }, // row 1
{ '7', '8', '9' } // row 2
};我的功能是:
int searchBoard()
{
char board[3][3];
for (int r = 0; r < 3; r++)
{
for (int c = 0; c < 3; c++)
{
if (board[r][c] == '5')
{
return r;
}
}
}
}我真的很感激你的帮助!
发布于 2014-05-09 01:57:49
尝试将函数searchBoard更改为
int searchBoard()
{
char board[3][3] =
{
{ '1', '2', '3', }, // row 0
{ '4', '5', '6', }, // row 1
{ '7', '8', '9' } // row 2
};
for (int r = 0; r < 3; r++)
{
for (int c = 0; c < 3; c++)
{
if (board[r][c] == '5')
{
return r;
}
}
}
}发布于 2014-05-09 01:54:09
您不应该在board中声明一个本地的、未初始化的searchBoard(),它掩盖了全局board。
https://stackoverflow.com/questions/23555450
复制相似问题