Vector中数字常量之前应为标识符

expected identifier before numeric constant in a Vector

本文关键字:标识符 数字 常量 Vector      更新时间:2023-10-16

我正在制作一个简单的程序,请看一下

#include<iostream>
using namespace std;
int main(int argc,char* argv[])
{
int op=0;
int v[20]=[1, 0];   
float Ma=0;
if (argv[1]==1)
{
float S=0;
for(int i=0;i<=20;i++)
{
S=S+v[i];
}
Ma=(double)(S/20);
}

cout<<"Media aritmetica pentru elementele din vector este "<<Ma<<endl;
return 0;
}

我得到这个错误Program.cpp:10:13:error:在数值常量之前需要标识符

int v[20]=[1, 0];
^

我正在使用ubuntu的gcc进行编译,我真的不确定是否有什么可能导致这种情况。我对此有点陌生。

您可能打算定义一个由20个int组成的数组,并将其前2个元素分别初始化为1和0。

好吧,而不是写:

int v[20] = [1, 0];

你应该写:

int v[20] = {1, 0};

这就是你想要的意思。但是,请注意,术语"vector"通常在C++中具有不同的含义——标准库中std::vector容器类的名称。

请改用大括号。

int v[20]={1,0};