用vector构造自动扩容的二维数组
#include <iostream>
#include <string>
#include <vector>
using namespace std; int main()
{
vector<vector<string> > edge; //注意<string>后有一个空格符号
vector<string> stemp(); //将列的个数设置为2
for(int i = ;i<;i++) //此处参数5表示将行数设置为5
{
cin>>stemp[]>>stemp[];
edge.push_back(stemp);
} for(int j=;j<edge.size();j++)
{
cout<< j+<<": "<<edge[j][]<<" , "<<edge[j][]<<endl;
}return ;
}
//eg
#include <iostream>
#include <vector>
using namespace std; int main()
{
vector<vector<int> > a;
vector<int> stmp(); //set the colCount=5
for (int i = ; i < ; i++) //set the rowCount=5
{
for (int j = ; j < ;j++)
{
stmp[j] = (i+)*(j+);
cout << stmp[j] << " ";
}
cout << endl;
a.push_back(stmp);
}
int rowCount = a.size(); //get the rowCout from a two-dimensional array
int cloCount = a[].size(); //get the colCout from a two-dimensional array
cout << "row: " << rowCount << endl;
cout << "col: " << cloCount << endl;
return ;
}
//注:如果二维数组是如 int a[15][8]定义的,则通过如下方法获取行列数
cout << sizeof(a)/sizeof(a[0]) << endl; //行数outpuut 15
cout << sizeof(a[0]) / sizeof(a[0][0]) << endl; //列数outpuut 8
用vector构造自动扩容的二维数组的更多相关文章
- 【C语言】构造长度可变的二维数组
#include <stdio.h> #include <malloc.h> #include <memory.h> int getArray(int ***p,i ...
- 使用vector<vector<int>>实现的一个二维数组
本文为大大维原创,最早于博客园发表,转载请注明出处!!! 1 #include<iostream> #include<vector> using namespace std; ...
- 怎么使用C++标准库来实现二维数组
在编程里,像界面布局是二维的,那么常常使用二维数组来表示界面的元素,那么就需要使用二维的数组,在现在C++肯定是以标准库为基础了,不再使用C的二维数组,那么怎么样做呢?下面就使用vector来实现二维 ...
- 【剑指offer】04A二维数组中的查找,C++实现
1.题目 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数数组和一个整数,判断数组中是否含有该整数. 2.思路 首先选取数 ...
- C语言数组篇(四)二维数组
二维数组声明: ][] ={{,,},{,,}; //两行 三列 二维数组在声明的时候可以不写行,但一定要写列 ] = {{,},{,,},{}}; //未声明的地方自动补零 二维 ...
- 剑指offer1: 组类型——二维数组中的查找(给定一个数字,查找是否在该数组中)
1. 思路: 缩小范围 2. 方法: (1)要查找的数字等于数组中的数字,结束查找过程: (2)要查找的数字小于数组中的数字,去除该数字右边的数字,在剩下的数字里查找: (3)要查找的数字大于数组中的 ...
- c++中创建二维数组的几种方法
一.用new申请内存空间 int **dp=new int*[n];//动态申请二维数组nxm ;i<n;++i){ dp[i]=new int[m]; } 二.用malloc申请内存空间 ; ...
- C++学习笔记之由文本文件读取数据到vector模板建立的二维数组 并存储为新的文本文件
阅读本文可首先参考: C++学习笔记之输入.输出和文件 测试数据: /*读取txt文件到二维数组*/ #include <iostream> #include <fstream> ...
- stl vector创建二维数组
vector<vector<); for (auto it = v.begin(); it != v.end(); it++) { ; (*it).reserve();//预留空间为5,但 ...
随机推荐
- CentOS7 升级到7.4
2 升级CentOS7.4 自己电脑上的系统还是CentOS7.2,服务器是CentOS7.3, 打算统统升级到最新版 升级前查看 > lsb_release -a LSB Version: : ...
- linux sudo命令详解
--sudo命令重启网卡 sudo service network restart http://bestchenwu.iteye.com/blog/1450292
- Mysql 中 trim 的用法
需求:去掉contract字段值中的% update gsfrankfurt set contract = trim(both "%" from contract);
- 基于AndroidPn二次开发的可行性
一.背景 如果要自己搭建,从零开始做或基于开源进行修改扩充,开源的push引擎,90%的博文首推AndroidPN,结合公司现状,最优解决方案就是进行AndroidPN的二次开发了.先看一下这个项目: ...
- [Java基础]List,Map集合总结
java.util包下: Collection |--List 接口 |----ArrayList |----LinkedList |----Vector |-----Stack |---Set ...
- CentOS erlang安装、emqtt
安装erlang 如果未安装以后程序,请先安装依赖 $sudo yum install gcc gcc-c++ glibc-devel make ncurses-devel openssl-dev ...
- jQuery改变label/input的值,改变class,改变img的src
jQuery改变label/input的值.改变class,改变img的src jQuery改变label的值: $('#aID').text("New Value"); jQue ...
- ubuntu命令改变文档权限和所有者
chgrp :改变档案所属群组 chown :改变档案拥有者 chmod :改变档案的权限, SUID, SGID, SBIT等等的特性,可读.可写.可执行 1 chgrp 例子 chgrp [-R] ...
- Javascript实现真实字符串剩余字数提示
//文本框剩余字数提示(字符大小) function textLimitCheckSj(thisArea, maxLength, SpanId) { var str = thisArea.value; ...
- 关于Tomcat 开启不了的几点解释
这段时间基本熟悉java语言基本语法包,类(内部,外部),整体结构跟c#还是有点差异,在接口,多态,抽象等几乎一致,唯一差异仅存在于关键字上. 在用了几天记事本熟悉代码上,昨天晚上就准备转想myEcl ...