c++的数组与python的list相似,都有下标,不同的是,python的list不区分类型,而c++的数组必须是同一类型的。
list1 = [1, 'hello', True]
for item in list1:
print(type(item))
#include <iostream>
int main(){
int res[]{1,2,3,4}
for(int item : res){
std::cout << item << std::endl;
}
return 0;
}
1,声明和初始化
- 声明
#include <iostream>
int main (){
int res[5];
// 遍历数组,这里数组中的元素都是随机的。
for(int item : res){
std::cout << item << std::endl;
}
return 0;
}
- 初始化
#include <iostream>
int main(){
//1, 先声明,在初始化
int res [5];
res[0] = 1;
res[1] = 2;
res[2] = 3;
res[3] = 4;
res[4] = 5;
// 2,声明并初始化
int res [5]{1,2,3,4,5};
int res [5]{1,2}; // 只初始化了前两位,剩下的都会以0占位
int res[5]{0}; // 表示5个长度的数组,每个元素都是0;
// 3, 自定义数组
int res[]{11,22,33,44}; //数组的长度没有规定,根据数组中的元素来判断数组的长度。
return 0 ;
}
2, 访问数组
- 获取数组中的元素
数组中的元素可以通过元素对应的下标来获取。
#include <iostream>
int main(){
// 声明并初始化
int res[5]{1,2,3,4,5};
std::cout << "数组中的第一个元素" << res[0] << std::endl;
std::cout << "数组中的第二个元素" << res[0] << std::endl;
// 获取元素时下标不存在
std:: cout << res[5] << std::endl; // 不会报错,输出的内容不是预想的
// 修改特定位置的元素
res[0] = 11;
return 0;
}
- 遍历数组
c++的数组,并没有提供获取长度的方法,不能直接遍历, 一种是直接指定遍历的长度,一种是通过代码计算出数组的长度,一种是用for循环
#include <iostream>
int main(){
// 定义数组
int res[]{1,2,3,4,5};
//直接指定数组
for(int i = 0; i < 7; i++){
std::cout << res[i] << std::endl;
}
//c++11 提供的for循环
for(int item : res){
std::cout << item << std::endl;
}
return 0 ;
}