<分区>
我正在尝试在类的构造函数中初始化一个二维字符数组。假设构造函数只是将 char 数组的值设置为空格:' '。然而,尝试这样做会导致 SegFault。
构造函数:
Board::Board(void)
{
int i,j;
for (i=0;i<10;i++)
{
for (j=0;i<10;j++)
{
score[i][j] = ' ';
}
}
}
其中 score 是一个私有(private)类成员和一个 10 x 10 字符数组。
您的程序中有几个错误。
这是最终代码:
#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;
}
你可以看到它正在编译 here
错误:
你还没有公布得分,( char score[10][10];
)
- 排队
for (j=0;i<10;j++)
你正在递增变量 j
但检查变量 i
所以会进入死循环
- 不需要行 (
j=0;
)
-
score[i][j] = ;
不正确,应该是 score[i][j] = ' ';
[我看到你已经在更新中更正了第 2 点和第 4 点,它们应该出现在答案中,以免人们感到困惑,所以我会尝试更新一次问题]