一、使用cin输入时,分为两种情况:
1、输入一行
cin>>a>>b;
输入的格式为 a b空格隔开,Enter结束
2、输入多行,元素不确定时
(1)vector<int> v(n)
for(int i=0;i<n;i++)
cin>>v[i];//或者是scanf(&v[i])
(2)
vector<int> v;
int x;
while(cin>>x)
v.push_bash(x);
3、动态数组的话
(1)一维数组
cin >> n>>k;
int *a=new int[n];
int *b=new bool[k];
delete []a;
delete []b;
(2)二维数组
int **a=new int *[n];// int*[n] 表示有n个指针数组
for(int i=0;i<n;i++)
p[i]=new int[5];
二、vector使用
1、可以直接 vector<int> a(n ),表示当前vector有n个元素了
capacity(),当前已分配的内存中能容纳多少元素
resize(n),强制把容器改为容纳n个元素。如n>size(),则多出的可分为设定值,默认为0,若小于,则舍弃尾部数据
reserve(n),强制调整capacity,若n小于capacity,n不小于当前大小。
可以使用数组初始化vector,如:
int a[5]={0,1,2,3,4};
vector<int> v(a,a+5);
2、二维vector也可以使用下标访问
vector<vector<int>> array(5)
for(int i=0;i<array.size();i++)
array[i].resize(3)
array[i][j]=n;
//或者这样 有10行5列, ()里的意思为10行,5列,每一列初始化为5
vector<vector<int> > xx(10, vector<int>(5));
版权声明:本文为u012686154原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。