我试图在C ++中找出一个完整的数组。 例如,我希望输出为x = [1,2,3,4,5 .... n] 我该怎么做呢?我已经知道如何使用简单的for循环打印数组的每个元素。例如在python中,您可以简单地说x = [],创建一个for循环以将元素附加到数组,并打印x。
所以,让我说我有这个代码。
schema_name
--------------------
pg_toast
pg_temp_1
pg_toast_temp_1
pg_catalog
public
information_schema
在这种情况下,这显然只会吐出x [10]。我想要的地方x = [1 ... n]等 实现这一目标的最简单方法是什么?
我在OSX上使用Eclipse。我使用Xcode开发人员工具用于命令行的g ++编译器
答案 0 :(得分:3)
您正在寻找range based for
loop:
double x[] = { .0, .1, .2, .3, .4 };
// Iterate through all elements
for (auto d : x)
{
std::cout << d << std::endl;
}
请注意,上面的内容包含每个元素的副本,因此如果您想要修改元素,则需要使用
for (auto& d : x)
代替。
或者你可以像原来一样使用普通的for
循环:
for (int i = 0; i<n; ++i)
{
std::cout << x[i] << std::endl;
}
基于范围的for
循环是最简单的。
答案 1 :(得分:2)
如果您对STL有所了解,可以尝试使用迭代器
代码:
#include <iostream>
#include <iterator>
using namespace std;
int main()
{
int arr[5] = {1,2,3,4,5};
copy(arr, arr + sizeof(arr)/sizeof(int),ostream_iterator<int>(cout, " "));
cout << endl;
return 0;
}