User: alciro    User
 Original    Translate to:  Deutsch  English  Français  中文  
 

Programación en C++ Builder

 数组 (数组)
 指针
3. 例如在C + +类
8. AnsiString类型类的方法
 C + +项目
 包,分发的应用程序,无需安装
 交换或冒泡排序
 String.h 字符串函数

数组 (数组)

数组是一个集合的元素相同类型的骰子进行标识索引。 开头的索引 o.数组的元素可以声明 C 中的任何数据类型

的数组声明

NombreTipo NombreVariable [号元素] ;

一维数组通常称为 向量。 <br/> 的一维数组或矢量的例子:

 列出 int [5] ; / / 的 5 个整数 char 数组名称 [10] ; / / 阵列 10 个字符的

内存分配

为数组分配的内存,由该类型的数据和在数组中元素的数目

< p style ="左填充: 30px ;"">< Em > 字节 = 字节 (类型) x 号"元素 <br/>

与前面的示例 (列表 int [5] ;) 数字的元素 e:

艾利

我X 5 = 20 字节 (4 字节) NT

利用 < /强 >

处理数组必须应用相同的概念到其余的变量。

 列表 [0] = 300; / / 赋值 d对元素的向量列表 [1] 的常数 e = 50 ; 列表 [2] = 列表 [0] + [1] ; 列表 / / 求和结果保存在另一个元素的数组中的元素,

Declaracion 和 asignacion

 int vector1 [] = {-200,-100,0、 100、 200} ;/ / 整数的数组 vector1 与 5 项 int 类型 [3] = {5、 10、 15} ;/ / 阵列的整数类型的 5 项 char cad [5] = {'a'、 'b'、 'c',','e'} ; / / 阵列与 5 项整个 char vector1

下面的三个定义是等价:

 char [5] 问候 ="你好"; char [] 问候语 ="Hello";char 问候 [5] = {'h',' o,'l','a'、 '\0'} ;

时声明的和可以省略同时分配维度,因为编译器可以自动确定基于的项目,数,是否该维度具有匹配的宣言 》 中的元素数。

<br / > 阵列 multimensionales

NombreTipo NombreVariable [n1] [n2] [nx] ; < /em >

是那些阵列的数组可以具有多个维度,但超过 2 或 3 维的数组不是业务。 二维矩阵通常称为

 int 表 [3] [5] ; / / 阵列的 15 个元素 (60 字节) int ArrayMulti [4] [10] [3] ; / / 数组的整数 4 x 10 x 3 浮木 [2] [3] ; / / 阵列的 3 X 2 = 6 的实际元素

U 多个维度。tilizacion

 表 [0] [0] = 100 ; / / 赋值 de 是 x = 表 [0] [0] + [0] 表 [1] ; 常量元素 [0] [0] / / 求和结果存储在变量 x 中的元素,

语句和 asignacion

 int 表 [2] [3] = {{1、 2、 3、} {3、 4、 5}} ;/ / 整数类型与 6 种元素的两个维度的矩阵表

<br/> 注意事项

 int t:Microsoft.WindowsMobile.DirectX.Vector2 [5] ; / / 宣言载体的 5 5 项目......t:Microsoft.WindowsMobile.DirectX.Vector2 [5] = 10; / / 分配给l 项目 6 (t:Microsoft.WindowsMobile.DirectX.Vector2 [5])

• 在以前的情况是 不存在的元素中写入失败,当访问带有索引不存在 (项目 6) 5 t:Microsoft.WindowsMobile.DirectX.Vector2 时发生。 因此这一行动的是有关写入操作在不确定的地方,不保留的问题,该变量这可能会产生错误的的运作,即使编译器不报告的错误的语法是否正确,因为不确定,它导致一个错误,可以有严重的后果。

• 数组 第一个元素 已在 索引 0最后一个元素维度-1.

• 编译器也总是知道的项数,预留内存必要.不能声明数组变量 以指示在 c + + 运行时数组的维度,维度。 或有一个动态数组应使用的访问技术动态数据。

< pre 类 ="sh_c"> int 维度 = 10 ; int vertor3 [尺寸] ;/ / 不允许错误

• 变量有 同等待遇的临时变量,创建 在堆栈上,因此很方便,与处理数组的小尺寸.如果有需要处理大量的数据和数组是大已工作在堆上,使用动态数据访问技术,通过这种方式,我们可以有阵列 dimensionable.

数组不能作为参数传递Ros 职能,必须处理指针和传递参数的引用。

• 的 功能可能不会返回数组

分配不允许 (e)计价阵列。 将一个数组赋给另一个,您必须编写代码来执行的工作分配元素到元素。

<br/> ejemplo:

1.-自然的方式使用的数组是下面的示例使用变量中指数。 创建 10 元素矢量和填充它们带给管理的数字按升序从 5。

 int vector1 [10] ; / / 10 元素 int 数据类型数组的声明 = 5; / / 可变数据的初始值与 (int n = 0;)(n < 10; n + +) {/ / 从第 1 次迭代}索引 0 到 9 vector1 [n] = 数据 ;/ / Asignacio{n 的到的元素的向量数据 + = 1 ; 基准 / / 增加数据}

2。-填充向量与 ASCII 小写字母升序排序与家中 'a'。

 char vector1 [5] ; / / 宣言 》 的 5 个要素矢量 char 字母 = 'a';/ / 变量的初始值的数据 (int n = 0;)n < 5 ;n + +) {/ / 从第 1 次迭代}索引 0 到 4 的字母 + = n ; / / 增加信 vector1 [n] =; / / Asignacio向量的元素为基准的 n}

3.-在另一个制作矢量的整数类型的副本,通过将所有元素都乘以 5。

 int vector1 [10] = {2,15,30,45,56,-45,0,7、-23,150} ; / / 矢量的 10 个元素赋值 int t:Microsoft.WindowsMobile.DirectX.Vector2 [10] ; 与 / / 宣言 》 的 10 个元素的数组 (int n = 0; n < 10 ; n + +) {/ / 迭代从索引 0 到 9 t:Microsoft.WindowsMobile.DirectX.Vector2 [n] = vector1 [n] * 5 ; / / 映射到 vector1 t:Microsoft.WindowsMobile.DirectX.Vector2 元素的产品数据的 * 5}
Loading
copyright © 2007-2024  www.alciro.org  All rights reserved.         
Share |