Closed. This question needs
details or clarity。它当前不接受答案。
想改善这个问题吗?添加详细信息并通过
editing this post阐明问题。
上个月关闭。
问题是-“错误:'int [2]'的初始化程序太多”,下面的代码:
int i = 0, numbers_array[2] = {0, 1, 2};
for(i = 0; i < 3; i++)
cout << numbers_array[i] << " ";
如果它从零开始计数,为什么我需要为整个数组的元素分配数组大小?我知道数组大小应该分配所有元素的数量,如下代码:
int i = 0, numbers_array[3] = {0, 1, 2};
for(i = 0; i < 3; i++)
cout << numbers_array[i] << " ";
cout << "\"" << numbers_array[3] << "\"" << endl;
当我想打印数组的第四个元素时,我得到第三个数字,那么数组的大小如何工作?
这很简单:
声明数组时,请指定元素总数:
int array[3] = {0, 1, 2};
当您要在表达式内部访问元素时,可以从零开始给出元素的“索引”:
array[2]
没有矛盾,因为它们是不同的任务。虽然,可以说,当您刚开始时,这有点令人困惑。但这就是事实。要记住的东西。