我试图用c ++声明一个全局6x6字符数组,整个数组用字母' I'初始化。
char result[] = new char[6][6];
result={{'I','I','I','I','I','I'},{'I','I','I','I','I','I'},{'I','I','I','I','I','I'},
{'I','I','I','I','I','I'},{'I','I','I','I','I','I'},{'I','I','I','I','I','I'}};
获得的错误: 1.错误:数组初始值设定项必须是初始化列表或 字符串字面量 2. C ++需要所有声明的类型说明符。如果我在main()中初始化,则此错误消失。
查询已解决。
答案 0 :(得分:1)
你尝试'我'而不仅仅是吗? 像
这样的东西char result[] = new char[6][6];
result={{'I','I','I','I','I','I'},{'I','I','I','I','I','I'},{'I','I','I','I','I','I'},{'I','I','I','I','I','I'},{'I','I','I','I','I','I'},{'I','I','I','I','I','I}};
答案 1 :(得分:1)
您可以在不同的步骤中进行定义和初始化。首先,您不能在全局范围内使用一般语句(如赋值)。其次,你不能真正分配给一个数组。第三,你没有数组并试图改变指针。
错误是因为第一个原因。
简单的解决方案是使用实际数组,并在一个步骤中进行定义和初始化:
String
答案 2 :(得分:0)
为了使用编译时常量char值,你需要用一对逗号包围字符:'我'。您的程序正在尝试将名为 I 的变量或常量的值放入数组中。