C++基础教程(二)——数组

简介: //============================================================================// Name : Array.
//============================================================================
// Name        : Array.cpp
// Author      : lf
// Version     :《C++语言基础教程》 吕凤翥  P29——P33
// Copyright   : Your copyright notice
// Description : 数组的基础知识
// Tips        :注意利用字符串初始化字符数组的代码
//============================================================================

#include <iostream>
#include <string>
using namespace std;

int main() {
	//定义一维数组
	int a[5]={1,3,5,7,9};
	for(int i=0;i<5;i++){
        cout<<"一维数组中第"<<i<<"个数据是"<<a[i]<<endl;
	}
	cout<<"--------------------"<<endl;
	int b[3];
	b[0]=9527;
	b[1]=9528;
	b[2]=9529;
	for(int i=0;i<3;i++){
	    cout<<"一维数组中第"<<i<<"个数据是"<<b[i]<<endl;
	}
	cout<<"--------------------"<<endl;



	//定义二维数组
	int c[2][3]={{1,2,3},{4,5,6}};
	for(int i=0;i<2;i++){
		for(int j=0;j<3;j++){
			cout<<"二维数组中第"<<i<<j<<"个数据是"<<c[i][j]<<endl;
		}
	}
	cout<<"--------------------"<<endl;



	//定义字符数组
	char d[4]={'a','b','c','d'};
	for(int i=0;i<4;i++){
		 cout<<"字符数组中第"<<i<<"个数据是"<<d[i]<<endl;
	}
	cout<<"--------------------"<<endl;
	/**
	 * 利用字符初始化一个字符数组(正确方式)
	 * 注意在字符串的末尾系统会自动添加一个'\0'作为字符串的结束符.
	 * 所以字符串"efgh"拆分成字符后实际为'e','f','g','h','\0'
	 */
	char e[5]="efgh";
	for(int i=0;i<4;i++){
		cout<<"字符数组中第"<<i<<"个数据是"<<e[i]<<endl;
	}
	cout<<"--------------------"<<endl;

//	//利用字符初始化一个字符数组(错误方式)
//	char f[5] = "efghi";
//	for(int i = 0; i < 5; i++){
//		cout<<"字符数组中第"<< i <<"个数据是"<<f[i]<<endl;
//	}
//	cout<<"--------------------"<<endl;

	//为了避免上面的错误可以如下定义字符数组
	//利用strelen()获取了字符数组的长度
	char g[]="efgh";
	for(int i=0;i<strlen(g);i++){
		cout<<"字符数组中第"<<i<<"个数据是"<<g[i]<<endl;
	}
	cout<<"--------------------"<<endl;



	//获取字符的长度
	string z="hello";
	cout<<"字符串hello的长度是"<<z.length()<<endl;
	return 0;
}

相关文章
|
17天前
|
C++
C++(十一)对象数组
本文介绍了C++中对象数组的使用方法及其注意事项。通过示例展示了如何定义和初始化对象数组,并解释了栈对象数组与堆对象数组在初始化时的区别。重点强调了构造器设计时应考虑无参构造器的重要性,以及在需要进一步初始化的情况下采用二段式初始化策略的应用场景。
|
1月前
|
算法 C++
c++学习笔记04 数组
这篇文章是C++学习笔记4,主题是数组。
36 4
|
23天前
|
C++ 索引
C++数组、vector求最大值最小值及其下标
C++数组、vector求最大值最小值及其下标
47 0
|
2月前
|
C++ 索引 运维
开发与运维数组问题之在C++中数组名和指针是等价如何解决
开发与运维数组问题之在C++中数组名和指针是等价如何解决
21 6
|
2月前
|
存储 安全 C++
开发与运维数组问题之声明一个数组如何解决
开发与运维数组问题之声明一个数组如何解决
39 6
|
2月前
|
存储 C++ 容器
开发与运维数组问题之C++标准库中提供数据容器作为数组的替代如何解决
开发与运维数组问题之C++标准库中提供数据容器作为数组的替代如何解决
43 5
|
1月前
|
安全 编译器 C语言
C++入门-数组
C++入门-数组
|
3月前
|
存储 安全 算法
C++的内置数组和STL array、STL vector
C++的内置数组和STL array、STL vector
|
3月前
|
存储 算法 安全
C++一分钟之-数组与指针基础
【6月更文挑战第19天】在C++中,数组和指针是核心概念,数组是连续内存存储相同类型的数据,而指针是存储内存地址的变量。数组名等同于指向其首元素的常量指针。常见问题包括数组越界、尝试改变固定大小数组、不正确的指针算术以及忘记释放动态内存。使用动态分配和智能指针可避免这些问题。示例代码展示了安全访问和管理内存的方法,强调了实践的重要性。
41 3
|
2月前
|
vr&ar C++
1695. 删除子数组的最大得分(C++,滑动窗口)
1695. 删除子数组的最大得分(C++,滑动窗口)