C++ 设置空间的2d字符数组

C++ 设置空间的2d字符数组,c++,arrays,class,2d,private,C++,Arrays,Class,2d,Private,我试图在类的构造函数中初始化2d字符数组。假定构造函数只是将char数组的值设置为空格:“”。然而,尝试这样做会导致错误 建造商: Board::Board(void) { int i,j; for (i=0;i<10;i++) { for (j=0;i<10;j++) { score[i][j] = ' '; } } } Board::Board(无效) { int i,j;

我试图在类的构造函数中初始化2d字符数组。假定构造函数只是将char数组的值设置为空格:“”。然而,尝试这样做会导致错误

建造商:

Board::Board(void)
{
    int i,j;
    for (i=0;i<10;i++)
    {
        for (j=0;i<10;j++)
        {
            score[i][j] = ' ';
        }
    }
}
Board::Board(无效)
{
int i,j;

对于(i=0;i,您的程序中有几个错误

以下是最终代码:

#include <stdio.h>

int main(void) {
    int i,j;
    char score[10][10];
    for (i=0; i<10; i++){
        for (j=0; j<10; j++){
            score[i][j] = ' ';
        }
    }

    return 0;
}
#包括
内部主(空){
int i,j;
字符分数[10][10];

对于(i=0;iIt可能有助于告诉我们您使用的是什么语言。我知道我没有,我在尝试修复错误时添加了它,它没有任何效果。您已将
放入调试器中,我是否已在调试器中逐步执行此操作?我喜欢在思考应该发生什么的同时执行此操作。我认为如果您这样做,您会很快发现此类错误。倾向于在或者我。YMMV。@ooga它不会跳过,因为在第一种情况下,我将为0,然后它将进入第二个循环,因为0谢谢我的问题是我在第二个for循环中,没有捕捉到它。谢谢!用
std::memset(&score',,sizeof score)替换这两个循环
——当然,如果您不切换到
std::array
,哪一个更好