vector创建数组
时间: 2023-11-12 15:09:29 浏览: 74
可以使用vector来创建数组,具体操作如下:
```c++
#include <vector>
using namespace std;
int main() {
int n = 10; // 数组长度
vector<int> arr(n); // 创建长度为n的数组
for(int i = 0; i < n; i++) {
arr[i] = i + 1; // 给数组赋值
}
return 0;
}
```
以上代码创建了一个长度为10的数组,并将其赋值为1~10。
相关问题
C++使用vector创建数组时的初始容量可以是变量吗
是的,可以使用变量作为vector创建数组时的初始容量。例如:
```cpp
int n = 10; // 变量n
std::vector<int> arr(n, 0); // 创建初始容量为n,所有元素都为0的整型数组
```
在上面的代码中,变量n的值为10,即初始容量为10,所有元素都为0。如果需要动态地改变vector的大小,可以使用resize()函数。例如:
```cpp
int m = 5; // 变量m
arr.resize(m); // 将数组大小改为m
```
在上面的代码中,数组的大小被改为了5。注意,如果新的大小小于原来的大小,那么超出部分的元素会被删除;如果新的大小大于原来的大小,那么新增的元素会被初始化为默认值(0或空字符串等)。
创建有n个元素的int类型和Point类型数组,n值由用户输入,并通过键盘给每个元素赋值,要求程序完整能够执行。 (1)用new动态创建数组 (2)用vector创建数组对象
好的,您的问题是关于创建数组的。我可以帮您解答。下面是用C++语言实现的代码:
1. 用new动态创建数组
```c++
#include<iostream>
using namespace std;
int main()
{
int n;
cout<<"请输入数组的长度:"<<endl;
cin>>n;
// 动态创建int类型数组
int* arr = new int[n];
cout<<"请输入数组的元素(int类型):"<<endl;
for(int i=0;i<n;i++)
{
cin>>arr[i];
}
cout<<"数组的元素(int类型)为:"<<endl;
for(int i=0;i<n;i++)
{
cout<<arr[i]<<" ";
}
cout<<endl;
// 动态创建Point类型数组
struct Point
{
int x;
int y;
};
Point* arr_p = new Point[n];
cout<<"请输入数组的元素(Point类型):"<<endl;
for(int i=0;i<n;i++)
{
cin>>arr_p[i].x>>arr_p[i].y;
}
cout<<"数组的元素(Point类型)为:"<<endl;
for(int i=0;i<n;i++)
{
cout<<"("<<arr_p[i].x<<","<<arr_p[i].y<<") ";
}
cout<<endl;
// 释放内存
delete[] arr;
delete[] arr_p;
return 0;
}
```
2. 用vector创建数组对象
```c++
#include<iostream>
#include<vector>
using namespace std;
int main()
{
int n;
cout<<"请输入数组的长度:"<<endl;
cin>>n;
// 创建int类型vector数组
vector<int> arr(n);
cout<<"请输入数组的元素(int类型):"<<endl;
for(int i=0;i<n;i++)
{
cin>>arr[i];
}
cout<<"数组的元素(int类型)为:"<<endl;
for(int i=0;i<n;i++)
{
cout<<arr[i]<<" ";
}
cout<<endl;
// 创建Point类型vector数组
struct Point
{
int x;
int y;
};
vector<Point> arr_p(n);
cout<<"请输入数组的元素(Point类型):"<<endl;
for(int i=0;i<n;i++)
{
cin>>arr_p[i].x>>arr_p[i].y;
}
cout<<"数组的元素(Point类型)为:"<<endl;
for(int i=0;i<n;i++)
{
cout<<"("<<arr_p[i].x<<","<<arr_p[i].y<<") ";
}
cout<<endl;
return 0;
}
```
以上是两种创建数组的方法,希望可以帮到您。如果您还有其他问题,可以继续问我哦。