Chinaunix首页 | 论坛 | 博客
  • 博客访问: 14224
  • 博文数量: 2
  • 博客积分: 41
  • 博客等级: 民兵
  • 技术积分: 32
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-26 10:01
个人简介

生活就是酸甜苦辣咸!

文章分类

全部博文(2)

文章存档

2014年(2)

最近访客

分类: C/C++

2014-11-29 16:15:50

数组:将若干数据类型相同的元素,按照一定的顺序排列到一起的集合,以下标的方式存储在具体的数组中。物理存储单元上是连续的。

按照维数:一维数组 buff[10]、二维数组 buff[5][10]、三维数组 buff[2][5][10]等。

按照数组元素类型:数值数组(int buff[10])、字符数组(char buff[10])、指针数组(int* buff[10])、结构数组(struct student buff[10])等。

静态数组:数组的大小是指定的,不可以再改变。(buff[10])

动态数组:声明时没有制定数组的大小,真正使用时,根据具体的需求,申请足够的空间,在堆上,用完需要手动释放.
struct student{
    int id;
    int buff[0];//动态数组
};

变长数组以函数传参的方式来指定数组的大小,这个数组是存放在栈上,用来后会自动释放,不需要关注内存的释放。
void test(int size)
{
    int buff[size];
    ......
}

关联数组:又称映射、字典是一个抽象的数据结构,它包含着类似于(键,值)的有序对。

指针数组:数组中每个成员都是,该数据类型的指针。int* buff[10](存放了10个int型指针)

数组指针:指向数组的指针。int(*p)[10] (p是一个指向包含10个整数类型的数组的指针,步长为10个整数。)
一维:int array[3] = {1, 2, 3};
二维:int array[3][4];
int (*p)[3];

一维:p = &array;
二维:p = array;
......

数组的操作:排序、查找、添加、修改和删除

阅读(337) | 评论(0) | 转发(0) |
0

上一篇:开始新的生活

下一篇:没有了

给主人留下些什么吧!~~