首页 > 编程语言 >C++基础——数组

C++基础——数组

时间:2024-04-05 22:58:06浏览次数:18  
标签:返回 容器 定义 迭代 元素 基础 C++ 数组

数组:就是相同数据类型的集合

三种定义和初始化数组:

(1)常规数组(C数组)定义

最普通的一个定义方式,也是C语言风格

数据类型 数组名 [数组大小]

(2)动态数组容器 vector

要加入头文件#include<vector>

eg:定义一个整形类型的数组

std::vector<int>num(10)

push_back在容器后端增加元素
pop_back在容器后端删除元素
insert在容器中间插入元素
erase删除容器中间的元素
clear清除容器内的元素
front返回容器前端元素的引用
back返回容器末端元素的引用
begin返回容器前端的迭代器
end返回容器末端的迭代器
rbegin返回容器前端的倒转迭代器
rend返回容器末端的倒转迭代器
resize重设容器中可存储元素的个数
size返回当前容器中的元素个数
empty若容器空则返回true,否则返回false
capacity返回当前容器可存储的最大元素个数
at(n)返回第n个元素的引用
swap(x)与容器x(vector容器)互换元素
operator[ ]利用 []运算符 取出容器中的元素

(3)固定大小数组容器 array

要加入头文件#include<array>

eg:定义一个整形类型的数组

std ::array<int>num(10)

at(n)返回第n个元素的引用
operator[ ]利用 []运算符 取出容器中的元素
front返回容器前端元素的引用
back返回容器末端元素的引用
begin返回容器前端的迭代器
end返回容器末端的迭代器
rbegin返回容器前端的倒转迭代器
rend返回容器末端的倒转迭代器
size返回当前容器中的元素个数
empty若容器空则返回true,否则返回false
data直接访问底层连续存储
to_array从内建数组创建 std::array 对象
fill以指定值填充容器
swap(x)与容器x(vector容器)互换元素

数组的引用(使用)

C数组的使用:

数组名 [数组的索引]

数组的索引是从0开始到定义数组时定义的大小减1

例如:

定义一个大小为10的数组那该数组最后一个索引是9。

vector和array的使用:

可以用.at进行引用

std:::count<<v.at(9);

这可以防止越界访问

标签:返回,容器,定义,迭代,元素,基础,C++,数组
From: https://blog.csdn.net/2301_80158456/article/details/136739399

相关文章

  • Day1 数组第一章part01
    1.数组理论基础重点:数组是存放在连续内存空间上的相同类型数据的集合。数组下标都是从0开始的。数组内存空间的地址是连续的。正是因为数组的在内存空间的地址是连续的,所以我们在删除或者增添元素的时候,就难免要移动其他元素的地址。例如删除下标为3的元素,需要对下标......
  • html入门基础
    html主要框架:<html>        <!--头部-->        <head>          <title>标题</title>        </head>        <!--主体-->        <body>        </body></html>一、标签1.加粗<strong></strong> ......
  • ES6数组中删除指定元素
    ES6数组中删除指定元素 知识点:ES6从数组中删除指定元素findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引。否则返回-1。arr.splice(arr.findIndex(item=>item.id===data.id),1) http://louiszhai.github.io/2017/04/28/array/1:js中的spli......
  • 十大排序算法的C++实现
    2024年4月5日排序算法一、稳定性的定义排序算法的稳定性是指排序过程中,相同元素的相对位置是否会发生变化。稳定的排序算法在排序过程中不会改变元素彼此的位置的相对次序,而不稳定的排序算法经常会改变这个次序。稳定性是一个特别重要的评估标准,排序算法的稳定性是一......
  • 洛谷P1000超级玛丽游戏C++
    题目描述超级玛丽是一个非常经典的游戏。请你用字符画的形式输出超级玛丽中的一个场景。********************####....#.#..###.....##....###.......############......
  • c语言之指针数组
    在c语言中,一个数组元素是由指针组成的,就叫指针数组。指针数组的定义方法类型名*数组名[数组长度]如果要处理多个字符串,用指针数组会方便多。举个例子,代码如下#include<stdio.h>intmain(){ inti; char*s[]={"cprogram","control","logic"}; for(i=0;i<3;i++) ......
  • C++(语法以及易错点2)
    1.内联函数 1.1概念 以inline修饰的函数叫做内联函数,编译时C++编译器会在调用内联函数的地方展开,没有函数调用建立栈帧的开销,内联函数提升程序运行的效率。​intADD(inta,intb){returna+b;}​ 1.2特性 1.inline是一种以空间换时间的做法,如果编......
  • 人工智能基础概念5:使用L1范数惩罚进行Lasso回归(正则化)解决机器学习线性回归模型幻觉和
    一、引言在老猿CSDN的博文《人工智能基础概念3:模型陷阱、过拟合、模型幻觉》中介绍了通过L1或L2正则化来限制模型的复杂度来解决过拟合的问题,老猿当时并不了解这背后的原理,这2天通过查阅资料终于明白了相关知识,在此一L1正则化来分享一下相关原理。二、相关概念2.1、......
  • C++(语法以及易错点.1)
    1.函数重载 1.1函数重载:是函数的一种特殊情况,C++允许在同一作用域中声明几个功能类似的同名函数,这些同名函数的形参列表(参数个数或类型或类型顺序)不同,常用来处理实现功能类似数据类型不同的问题。include<iostream>usingnamespacestd;//1、参数类型不同int......
  • 蓝桥杯 试题 基础练习 Fibonacci数列
    问题描述Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。输入格式输入包含一个整数n。输出格式输出一行,包含一个整数,表示Fn除以10007的余数。说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要......