详解C语言初阶之数组

 更新时间:2021年11月12日 11:04:16   作者:鲸落之·海  
这篇文章主要介绍了C语言中的数组基础,介绍了其相关概念,具有一定参考价值。需要的朋友可以了解下,希望能够给你带来帮助

1.数组

1.1数组的概念

所谓数组(array),就是具有相同数据类型的集合,存放的数据类型即数组本身的类型。

可以发现存储的都是int型 

补充 :调试小技巧

调试窗口 (按F5进行调试,打开菜单栏中的调试—窗口—监视—随便打开一个监视窗口,输入arr,将程序运行过arr的初始化即可观察到arr内部进行的初始化)

1.2数组的定义 

a:完全初始化

数组内部存储了4个int类型的数据,分别是1,2,3,4

b:不完全初始化

 要求开辟四个空间存储数据,但只对第一个进行了初始化,默认后面三个均为0

c:给定元素个数

给定元素个数后,可以是完全初始化,也可以是部分初始化。

d:不给定元素个数

自动给四个元素分配空间,实际上中括号内还是4

注意:

a:不给定元素数据一律视为完全初始化

b:数组内部元素个数至少为1

c:[]内部必须是整型常量(c90 标准)——c99标准支持其他类型(linux),但我们主流仍旧采用c90标准,同样注意,我们一般所用的const定义的常量叫作常变量,本质并不算常量,因此该类型数据同样不能放在【】内

1.3数组的下标访问

数组可以通过指针和下标来进行访问,这里我们来说下标。

数组的第一个元素是【0】,即arr【0】代表第一个元素,arr【5】代表第六个元素

我们通常通过遍历(即循环)来对数组内容进行打印,如果存储的是字符串的话,那我们只需要%s(用来打印字符串)即可。

 

 注意:

a:通常情况下,数组名即arr是数组的首元素地址(因此对整型数组进行scanf循环输入时,直接scanf(“%d” ,arr)即可,而不用加&符号),但sizeof(arr)中的arr却代表整个数组的大小

b:sz=整个数组的大小/一个元素的大小==元素个数,arr【0】内的0改为1/2/3.....均可,但一般采用0(数组至少一个元素),防止越界访问(如一共只有四个元素,却访问了arr【5】)。

c:对字符数组(存储字符的数组)以%s进行输出时,出现错误,因为%s用来输出字符串类型,即遇到字符串磨人的‘\0'结束符后停止输出,但字符数组中没有默认的'\0'结束符,输出不能停止,超出数组空间后便出现错误,强制终止。

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • 使用VS2010创建MFC ActiveX工程项目

    使用VS2010创建MFC ActiveX工程项目

    VS2010开发ActiveX有两种方法,分别是MFC和ATL。MFC开过起来比较简单,但是最终生成的文件比较大,ATL是专门用来开发ActiveX的,但是相对比较难,必须知道很多原理机制和API。咱先从MFC开发ActiveX开始吧。
    2015-06-06
  • C语言获取文件长度的方法

    C语言获取文件长度的方法

    这篇文章主要介绍了C语言获取文件长度的相关知识,包括使用标准库方法和使用Linux系统调用,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2023-10-10
  • C++中auto关键字的使用

    C++中auto关键字的使用

    本文主要介绍了C++中auto关键字的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • C++实现四叉树效果(附源码下载)

    C++实现四叉树效果(附源码下载)

    这篇文章主要介绍了C++实现四叉树效果(附源码下载),非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-03-03
  • C++实现投骰子的随机游戏

    C++实现投骰子的随机游戏

    这篇文章主要为大家详细介绍了C++实现投骰子的随机游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • QT使用SQLite数据库超详细教程(增删改查、对大量数据快速存储和更新)

    QT使用SQLite数据库超详细教程(增删改查、对大量数据快速存储和更新)

    这篇文章主要给大家介绍了关于QT使用SQLite数据库的相关资料,其中包括增删改查以及对大量数据快速存储和更新,SQLite是一种嵌入式关系型数据库管理系统,它是一个软件库,提供了一个自包含、无服务器、零配置的、事务性的SQL数据库引擎,需要的朋友可以参考下
    2024-01-01
  • C++实现歌手比赛评分系统

    C++实现歌手比赛评分系统

    这篇文章主要为大家详细介绍了C++实现歌手比赛评分系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • C++命名空间域的实现示例

    C++命名空间域的实现示例

    命名空间域就是一个独立的空间外面不能直接调用该空间域只能用访问限定符指定访问该空间域,本文主要介绍了C++命名空间域的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • 学习C语言要掌握的几个库

    学习C语言要掌握的几个库

    本文给大家分享的是网友提出的学习C语言要掌握的几个库,这里分享给大家,有需要的小伙伴可以参考下。
    2015-07-07
  • OpenCV相机标定的全过程记录

    OpenCV相机标定的全过程记录

    这篇文章主要给大家介绍了关于OpenCV相机标定的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-03-03

最新评论