在较大的代码中,我有以下代码:
#define N 10
..
..
..
char Map [N][N] = {"##########",
"#@ #",
"# #",
"# #",
"# #",
"# #",
"# #",
"# #",
"# #",
"##########"};
当我尝试编译并以Code bloke形式运行它时,我给了我错误
F:\ C++ \ Maze \ main.cpp | 25 |警告:扩展的初始化程序列表仅在-std = c++ 11或-std = gnu ++ 11中可用[默认启用] |
知道我在这个简单代码中做错了什么吗?
最佳答案
您的示例中每行的长度为10 + 1 = 11(请记住,字符串的空终止符需要分配空间)。所以:
#define N 10
#define M 11
char Map [N][M] = {"##########",
"#@ #",
"# #",
"# #",
"# #",
"# #",
"# #",
"# #",
"# #",
"##########"};
关于c++ - 使一个字符数组错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25322578/