(我是编码新手)
我正在尝试将数组元素本身替换为1,但似乎无法正常工作。在下文中,我尝试替换第三个元素:
int l=5;
int histogram[l];
histogram[l]={0};
histogram[2] = histogram[2] + 1;
它给了我以下错误;
预期为“;”表达后
直方图
最佳答案
首先,@ Elias已将数组histogram
的大小定义为5,并将histogram [5]初始化为0。但是任何数组的最后一个索引是size-1...(size minus one)
,因为数组索引从零开始一。
其次,您需要先初始化从histogram[]
到histogram[0]
的整个histogram[4]
数组,然后才能执行任何算术运算(例如加或减)。在您的代码片段中,您甚至在将histogram[2]
初始化为任何值之前都尝试将其递增1。
所以试试这个...
int len = 5, i = 0;
int histogram[len];
for(i = 0; i < len; i++) {
histogram[i] = 0;
}
histogram[2] = histogram[2] + 1; //can also use histogram[2] += 1; or histogram[2]++;
关于c++ - 将数组元素加1,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52401599/