C++ c++;:数组,初始值设定项太多

C++ c++;:数组,初始值设定项太多,c++,c++11,g++,C++,C++11,G++,有件事我不明白,我有一个错误,我试图搞乱多维数组初始值设定项,但我一直得到相同的太多初始值设定项错误。我遵循了C++教程,我一直在得到那个错误。我不明白。您的第一个元素somearray[0]有6个元素 test.cpp: In function ‘int main()’: test.cpp:11:29: error: too many initializers for ‘char [5]’ {'L','i','a','m','z'}}; 而不是5。请记住,somearray[6

有件事我不明白,我有一个错误,我试图搞乱多维数组初始值设定项,但我一直得到相同的太多初始值设定项错误。我遵循了C++教程,我一直在得到那个错误。我不明白。

您的第一个元素
somearray[0]
有6个元素

 test.cpp: In function ‘int main()’:
 test.cpp:11:29: error: too many initializers for ‘char [5]’
     {'L','i','a','m','z'}};

而不是5。请记住,
somearray[6][5]
声明了一个包含6行5列的二维数组,或者相当于一个包含6个
char[5]
数组的数组。该错误似乎表示您的最后一个元素,但实际上它表示数组定义的结束。

您的第一个元素
somearray[0]
有6个元素

 test.cpp: In function ‘int main()’:
 test.cpp:11:29: error: too many initializers for ‘char [5]’
     {'L','i','a','m','z'}};

而不是5。请记住,
somearray[6][5]
声明了一个包含6行5列的二维数组,或者相当于一个包含6个
char[5]
数组的数组。该错误似乎表示您的最后一个元素,但实际上它表示数组定义的结束。

不幸的是,您的编译器似乎有点愚蠢


{'L','i','a','m','z'}
是可以的,但是
{'m','a','r','t','i','n'}
对于
char[5]
来说太长了,不幸的是,您的编译器似乎有点愚蠢


{'L','i','a','m','z'}
可以,但是
{'m','a','r','t','i','n'}
对于
字符[5]来说太长了

我认为编译器在这里是愚蠢的,因为它指向了错误的位置,包含了一些错误,并迷惑了用户。我认为编译器在这里是愚蠢的,因为它指向了错误的位置,包含了一些错误,并迷惑了用户。感谢您的帮助!我对他做的教程有点迷糊了,他做了一些数组[5][5]={{T','h','o','s','e'},{c','h','I','c','k'};为什么可以?谢谢你的帮助!我对他做的教程有点迷糊了,他做了一些数组[5][5]={{T','h','o','s','e'},{c','h','I','c','k'};为什么可以?
{'M','a','r', 't', 'i', 'n'}