C++如何遍历数组vector

在C++中,vector是一个可变数组。那么怎么遍历它呢?我们以for循环为例(while循环,大家自己脑补)。

方法一:

基于范围的for循环,这是C++11新引入的。

cpp 复制代码
std::vector<int> v = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

for (const auto element : v) {
	std::cout << element << std::endl;
}

方法二:

使用迭代器。

cpp 复制代码
std::vector<int> v = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

for (auto element = v.begin(); element != v.end(); ++element) {
    std::cout << *element << std::endl;
}

v.begin()是第一个元素的指针,v.end()指向空(null)。++element是移动指针。

方法三:

这一种方式最传统,通过下标来遍历元素。

cpp 复制代码
std::vector<int> v = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

for (size_t i = 0; i < v.size(); ++i) {
	std::cout << v[i] << std::endl;
}

在此也给出C语言中遍历数组的方法:

c 复制代码
const int v[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
const int size = sizeof(v) / sizeof(v[0]);
for (int i = 0; i < size; i++) {
   printf("v[%d] = %d\n", i, v[i]);
}
相关推荐
I'm a winner10 分钟前
基于YOLO算法的医疗应用专题:第一章 计算机视觉与深度学习概述
算法·yolo·计算机视觉
林月明15 分钟前
【VBA】自动设置excel目标列的左邻列格式
开发语言·excel·vba·格式
vir0219 分钟前
P1928 外星密码(dfs)
java·数据结构·算法·深度优先·1024程序员节
喜欢吃燃面35 分钟前
数据结构算法题:list
开发语言·c++·学习·算法·1024程序员节
胡萝卜3.038 分钟前
C++ list核心接口与实战技巧
数据结构·c++·list·list使用
。TAT。1 小时前
C++ - 多态
开发语言·c++·学习·1024程序员节
寂静山林1 小时前
UVa 12991 Game Rooms
算法·1024程序员节
mit6.8241 小时前
[cpprestsdk] JSON类--数据处理 (`json::value`, `json::object`, `json::array`)
c++·1024程序员节
武当豆豆1 小时前
C++编程学习(第42天)
开发语言·c++·学习
咬_咬1 小时前
C++仿muduo库高并发服务器项目:Channel模块
linux·c++·channel·1024程序员节·muduo·高并发服务器