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]);
}
相关推荐
yzp-4 分钟前
记录一个死锁异常--循环打印 AB go语言
开发语言·后端·golang
NAGNIP6 分钟前
面试官:为什么需要量化,为什么 int4 _ int8 量化后大模型仍能保持性能?
算法
gihigo199813 分钟前
基于单亲遗传算法的汽车路径规划实现
算法·汽车
阿拉伯柠檬13 分钟前
应用层协议HTTP
linux·网络·c++·网络协议·http
爱上解放晚晚17 分钟前
QT转vs
c++
Wang2012201317 分钟前
AI各个领域适用的大模型介绍和适配的算法
人工智能·算法
tryxr22 分钟前
Java 中 this 关键字的使用场景
java·开发语言·类与对象·this关键字
写代码的【黑咖啡】23 分钟前
面向对象编程入门:从类与对象到构造函数
开发语言·python
沐知全栈开发24 分钟前
Perl POD 文档
开发语言
Yzzz-F25 分钟前
CF GYM105316A DP
数据结构·算法