我有一个非常基本的疑问。从下面的代码中,我宣布Board [] []为全局char数组。我想用一个名为init_board()
的函数初始化这个数组。但是,编译器返回访问函数C++中的全局变量
In function void init_board():
expected primary-expression before '{' token
expected ;' before '{' token
代码:
#include <iostream>
#include <conio.h>
using namespace std;
//global variables---------------
char Board[2][2];
//function declarations----------
void init_board();
int main(void)
{
init_board();
for(int i=0;i<2;i++)
{
for(int j=0;j<2;j++)
{
cout<<Board[i][j]<<" ";
}
cout<<"\n";
}
getch();
}
void init_board()
{
Board[2][2] = {{'a','b'},{'c','d'}};
}
什么是我提出的基本错误...请指出!
由于
这与全局无关。它与初始化器有关。 – Joe
Board [2] [2]'超出范围。由于Board有两行两列,只有'0'和'1'是合法的行/列值。 –
@DavidSchwartz我不能看到我在拍摄范围内的位置......我在Board中有2行2个元素[2] [2] = {{'a','b'},{'c','d '}};' –