浅议C语言中灵魂数组和指针的互操作

浅议C语言中灵魂数组和指针的互操作,第1张

浅议C语言中灵魂数组和指针的互操作,第2张

听很多朋友说C是一种怀旧的语言,因为它历史悠久。但自从各种面向对象编程语言相继出现后,其影响力不断下降。

当然这无可厚非,但是C的效率是其他语言无法比拟的,所以我们有必要掌握它的本质和奥秘,也有必要了解数组、略深的栈、列表、结构等基本数据结构的操作和实现。指针在C语言中也是一个优秀灵活的结构,理解它是很有必要的。

我们一般认为数组是一维的数据存储结构,因为两位数组或矩阵可以看作是多个一维数组的组合结构,在其上定义的数据存储和存取方式是相同的。所以一维数组是最基础也是最重要的部分,只有理解了这类数据结构的本质,才能得到类比。

数组是几个同类变量的聚合,允许用统一的名字喝里面的变量。所以数组是同一类型的有限数据集合。您可以通过下表访问数组中的一些数组元素。

在C语言中,数组都是由连续的内存区域组成的(有时,情况不一定如此)。最低地址对应第一个元素,数组下标从0开始,所以第一个元素是下标为0的元素,它的地址对应最后一个元素,即第n-1个元素(如果我们定义的数组是n元)。

如何定义数组:

在C语言中,允许在声明数组的同时初始化数组,也可以把声明和定义放在不同的位置。初始化通常类似于以下表达式:

type _ specifier array _ name[size 1]...[sizeN]= { value _ list };

其中,vlaue_list是由逗号(,)分隔的常量列表,常量列表必须与type_specifier兼容。由下一条语句的最后一个分号分隔。可以看出,一维数组的定义如下:

类型说明符

array _ name[size]= { value _ list };

如下所示:

char hello[12] = {'H ',' e ',' l ',' l ',' o ','

,' ',' w ',' o ',' r ',' l ',' d ',' \ 0 ' };

注意:字符数组以“' [16] '”结尾,这是C标准的一部分。因为操作字符数组时用' [16] '作为结束判断的标志。当然,如果定义一个字符串,就不需要加这个' [16] '。因为有一个机制可以帮你自动添加。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 浅议C语言中灵魂数组和指针的互操作

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情