IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 数组 简述 -> 正文阅读

[C++知识库]数组 简述

一、一维数组

?

数组是包含给定类型的一组数据,并将这些数据依次存储在连续的内存空间中。每个独立的数据被称为数组的元素(element)。元素的类型可以是任意类型。数组本身也是一个结构,其类型由它的元素类型延伸而来。更具体地说,数组的类型由元素的类型和数量所决定。如果一个数组的元素是E类型,那么该数组就称为“E?数组”。例如
如果元素类型为int,那么该数组的类型就是“int 数组"。然而,int 数组类型是不完整的类型,除非指定了数组元素的数量。如果一个int 数组有16个元素,那么它就是一个完整的对象类型,即“16个int元素数组"。

1.1一维数组的定义和初始化
数组的定义决定了数组名、元素类型以及元素个数。

其语法如下:? ?<类型> 数组名「<元素数量>];
元素数量在方括号([])之间,它必须是大于0的整数常量表达式。

eg:? int? ar[5];

数组在存储单元中是顺序连续存放的,任何一个元素都可以单独访问,其标识方法是用数组名和下标。

二、二维数组

2.1二维数组的定义: 类型名数组名 [行表达式][列表达式]; 行与列用常量表达式。

eg:

int main()
{
    int iar[3][4];//3行4列
    int bar[3][6];//3行6列
    return 0;
}

int iar[3][4];

一个二维数组,在本质上是有多个一维数组构成。(每个一维数的大小必须相同)
如:定义int ar[3][4]的二维数组,它是由3个一维数组组成,每个一维数组的大小是4个整型元素。可以只对部分元素赋值,未赋值的元素自动取0值。

如果对二维数组初始化,第一维可以缺省,但是第二维不可以缺省。

int? iar [ ][4] ={1,2,3,4,5,6,7,8,9,10,11,12};

2.2 二维数组的使用

int main()
{
	int iar[3][4];
	int x = 0;
	for (int i = 0; i < 3; ++i)
	{
		for (int j = 0; j < 4; ++j)
		{
			iar[i][j] = ++x;
		}
	}
	for (int i = 0; i < 3; ++i)
	{
		for (int j = 0; j < 4; ++j)
		{
			printf("iar[%d][%d] = %d,%p\n", i, j, iar[i][j], &iar[i][j]);
		}
	}
	printf("%d %d %d\n", sizeof(iar), sizeof(iar[0]), sizeof(iar[0][0]));//48 16 4
	return 0;
}

?总结:
C语言中的多维数组基本的定义是以数组作为元素构成的数组,二维数组的数组元素是一维数组,三维数组的数组元素是一个二维数组,依此类推。也就是说,多维数组用的是一个嵌套的定义。


?

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-09-04 17:19:43  更:2021-09-04 17:22:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 20:13:56-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码