繁体   English   中英

c ++结构数组-“此声明没有存储类或类型说明符”

[英]c++ Structure Arrays - “This declaration has no storage class or type specifier”

我在使用结构数组时遇到了麻烦。 这是我产生2条红色错误线的代码。

    struct frequents
{
    int count;
    char letter;
};

frequents testArray[2];
testArray[1].letter = 'v';   

该错误出现在具有声明错误的testArray下,并在“。”下。 其中提到它期望一个';'。

这是一条声明

testArray[1].letter = 'v';

语句要在函数(函数体)中执行,而不要像现在那样在任意的全局命名空间中执行。 在主程序入口点函数lambda ,独立函数成员函数体内移动您的语句。

或者,使用聚合初始化来初始化数组:

frequents testArray[2] = {{ 1, 'a' }, { 2, 'b' }};

或没有多余的花括号:

frequents testArray[2] = { 1, 'a', 2, 'b' };

由于您不在函数中:请替换

testArray[1].letter = 'v';

通过

int main() {
    testArray[1].letter = 'v';
    return 0;
}

并且可以编译。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM