当前位置: 首页 > 科技 > 人工智能 > C语言数组的优缺点,你有学废吗?_腾讯新闻

C语言数组的优缺点,你有学废吗?_腾讯新闻

天乐
2020-12-12 00:28:46 第一视角

一个阵列是相似类型的元素的集合。例如,整数数组保存int类型的元素,而字符数组保存char类型的元素。下面是数组的表示形式:

但是,数组有其自己的优点和缺点。

以下是数组的一些优点:

在数组中,使用索引号可以很容易地访问元素。

搜索过程可以轻松地应用于数组。

2D数组用于表示矩阵。

由于任何原因,用户希望存储相似类型的多个值,则可以有效地使用和利用Array。

现在让我们看一下数组的一些缺点以及如何克服它:

数组大小是固定的:数组是静态的,这意味着其大小始终是固定的。分配给它的内存不能增加或减少。下面是相同的程序:

说明:在上述程序中,声明了大小为10的数组,并在特定索引处分配了该值。但是,当打印索引11处的值时,它会打印垃圾值,因为该数组是从绑定索引之外访问的。在某些编译器中,它给出的错误为“数组索引越界”。。

如何克服:要克服该问题,请使用动态内存分配,例如malloc(),calloc()。它还有助于我们使用free() 方法释放内存,该方法有助于通过释放内存来减少内存浪费。下面是相同的程序:

数组是同类的:数组是同类的,即,数组中只能存储一种类型的值。例如,如果数组类型为“int”,则只能存储整数元素,而不能允许其他类型的元素,例如double,float,char等。下面是相同的程序:

说明:由于将整数类型数组的值分配给字符串浮点类型,因此上述代码给出了“ Compilation Error ”。

克服方法:解决该问题的方法是结构化,可以存储非均质(异构)值。下面是相同的程序:

数组是连续的内存块:数组将数据存储在连续(一对一)的内存位置。下面是相同的表示:

如何克服:为了克服对数组的顺序访问,其思想是使用Linked list。在“链接列表”中,元素不存储在连续的内存位置中。下面是相同的表示:

提示:支持键盘“← →”键翻页
为你推荐
加载更多
意见反馈
返回顶部