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]);
}
相关推荐
wangjialelele5 小时前
Linux下的IO操作以及ext系列文件系统
linux·运维·服务器·c语言·c++·个人开发
Sylvia-girl5 小时前
IO流~~
java·开发语言
打工哪有不疯的5 小时前
使用 MSYS2 为 Qt (MinGW 32/64位) 完美配置 OpenSSL
c++·qt
铉铉这波能秀5 小时前
LeetCode Hot100数据结构背景知识之元组(Tuple)Python2026新版
数据结构·python·算法·leetcode·元组·tuple
晚霞的不甘5 小时前
Flutter for OpenHarmony 实现计算几何:Graham Scan 凸包算法的可视化演示
人工智能·算法·flutter·架构·开源·音视频
Re.不晚5 小时前
JAVA进阶之路——无奖问答挑战3
java·开发语言
代码游侠5 小时前
C语言核心概念复习——C语言基础阶段
linux·开发语言·c++·学习
㓗冽5 小时前
60题之内难题分析
开发语言·c++·算法
大江东去浪淘尽千古风流人物5 小时前
【VLN】VLN仿真与训练三要素 Dataset,Simulators,Benchmarks(2)
深度学习·算法·机器人·概率论·slam
dingdingfish5 小时前
Bash学习 - 第3章:Basic Shell Features,第5节:Shell Expansions
开发语言·学习·bash