如何初始化二维字符数组的内容?
How do I initialize the contents of my 2d array of characters?
所以我用代码创建了一个函数:
#define ATABLE 20
void func1(){
char array[ATABLE][ATABLE];
int row, col;
for(row=0; row<ATABLE; row++)
for(col=0; col<ATABLE; col++)
{
array[row][col]={' '};
}
}
但是当我编译它时有一条错误消息,它说 "expected expression before '{' token" 我认为我的初始化有问题,但我似乎无法弄清楚如何正确地实现它。如果我想用 space 来初始化我的二维数组的所有元素,我该如何写呢?非常感谢所有答案。 TIA
不确定您是如何声明的 array
,但您可以试试这个:
array[row][col] = " ";
如果在java中:
//Assumes ATABLE has been pre-initialized.
char[][] array = new char[ATABLE][ATABLE];
for (int row = 0; row < ATABLE; row++)
{
for(int col = 0; col < ATABLE; col++)
{
array[row][col] = ' ';
}
}
为什么要用大括号括住单个字符?如果 array
是 char
的数组,就把
array[row][col] = ' ';
所以我用代码创建了一个函数:
#define ATABLE 20
void func1(){
char array[ATABLE][ATABLE];
int row, col;
for(row=0; row<ATABLE; row++)
for(col=0; col<ATABLE; col++)
{
array[row][col]={' '};
}
}
但是当我编译它时有一条错误消息,它说 "expected expression before '{' token" 我认为我的初始化有问题,但我似乎无法弄清楚如何正确地实现它。如果我想用 space 来初始化我的二维数组的所有元素,我该如何写呢?非常感谢所有答案。 TIA
不确定您是如何声明的 array
,但您可以试试这个:
array[row][col] = " ";
如果在java中:
//Assumes ATABLE has been pre-initialized.
char[][] array = new char[ATABLE][ATABLE];
for (int row = 0; row < ATABLE; row++)
{
for(int col = 0; col < ATABLE; col++)
{
array[row][col] = ' ';
}
}
为什么要用大括号括住单个字符?如果 array
是 char
的数组,就把
array[row][col] = ' ';