Excel不相邻列如何打印在一起-英雄云拓展知识分享
137
2023-11-01
【摘要】 本书摘自《C++程序开发案例课堂》一书中第7章,第1节,由刘春茂、李琪编著。
7.1 一维数组
什么是数组?现实生活中有大量类型相同、处理方法也一样的数据。为了实现对这些数 据的统一表达和处理, C++ 提供了“数组”这一数据结构。数组是有相同类型的元素的有序 集合,每个元素在数组中的位置可以用统一的数组名和下标来唯一确定。根据数组下标的多 少,数组可以分为一维数组和多维数组。只有一个下标的数组称为一维数组。
7.1.1 一维数组的声明
定义一维数组的语法格式如下:
类型数组名[常量表达式];
其中, "类型"是数组类型,即数组中各元素的数据类型,可以是整型、浮点型、字符 型等基本类型。“数组名”是一个标识符,代表着数组元素在内存中的起始地址,它的命名 规则与变量名的命名一样。 "常量表达式"又称下标表达式,表示一维数组中元素的个数, 即数组长度(也称为数组大小),用一对方括号“[]”括起来。方括号“[]”的个数代表数组的 维数, 一个方括号表示一维数组。
在编译过程中,编译程序为数组开辟连续的存储单元,用来顺序存放数组的各数组元 素,用数组名表示该数组存储区的首地址,并且数组元素的下标一律从0开始。
数组定义是具有编译确定意义的操作,它分配固定的大小空间。
一维数组元素按顺序存放,其所占字节数的计算公式如下:
数组所占总字节数=sizeof(type)*size
例如,下面分别定义了一个具有5个元素的字符型数组 a 和一个具有10个元素的整型 数组b:
下标指明了数组中每个元素的序号,下标值为整数,用数组名加下标值就可以访问数组 中对应的某个元素。下标值从0开始,因此对于一个具有 n 个元素的一维数组来说,它的下 标值是0~n-1。
下面以 inta[5]为例进行详细介绍。
a数组的元素是a[0]、a[1]、a[2]、a[3]和 a[4], 共5个元素, a 数组元素的下标大于等于0 且小于5。
编译程序将为a 数组在内存中开辟5个连续的存储单元(每个存储单元占2个字节),用来 存放a 数组的5个元素。
a[0]代表这片存储区的第一个存储单元,数组名 a 代表 a 数组的首地址,即 a[0]存储单元的地址。 a[i]实际上代表这片存储区序号为 i-1 的存储单元, a[i]就是一个带下标的 int 型变 量,a 数组是这些int型下标变量的集合。
对上面定义的整型数组a, 在内存中的存放顺序如下:
7.1.2 数 组 初 始 化
数组的赋值方法可以在数组定义时赋值,也可以在定义后赋值。数组初始化赋值是指在 数组定义时给数组元素赋予初值,数组初始化是在编译阶段进行的。这样将减少运行时间, 提高效率。
初始化赋值的一般形式如下:
类型说明符数组名[常量表达式]={值,值……值);
其中在{}中的各数据值即为各元素的初值,各值之间用逗号隔开。
在进行数组初始化时,应该注意以下几点。
(1)初始化的数据个数可以少于数组元素的个数,但不能超过数组元素的个数,否则会 出错。
(2)数组的元素不能自动初始化。
(3)若数组元素的个数定义省略,则系统根据初值的个数来确定数组元素的个数。例 如:int a[3]={1,2,3}, 数组有3个数组元素: a[0]=1,a[1]=2,a[2]=3。 若省略数组元素个数的 定义,则初值必须完全给出,如 int a[]={1,2,3}。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~