首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >C语言数组(1)

C语言数组(1)

作者头像
用户10782096
发布2023-10-10 16:28:40
发布2023-10-10 16:28:40
3540
举报
文章被收录于专栏:权子权子

一、一维数组的创建和初始化

数组是一组相同类型元素的集合。

1.1数组的创建方式

// ## //

// ## //

没有初始化的情况,随机值

// ## //

给它初始化,顺序值

// ## //

1.2数组的初始化

数组的初始化是指,在创建数组的同时,给数组的内容一些合理初始值(初始化)。 1

arr1

arr1

arr2

arr2

// ## //

1.3一维数组的使用

对于数组的使用我们之前介绍了一个操作符:[ ],下标引用操作符。它其实就是数组访问的操作符。看代码:

  • 计算数组元素个数的方法

// ## //

1.4一维数组在内存中的存储

我们要看它在内存中的存储 探究它内存中的布局 只要把每个元素的地址打印出来 就能够探究清楚它的一个布局

二、二维数组的创建和初始化

2.1二维数组的创建 & 初始化
2.2 二维数组的使用
2.3 二维数组在内存中的存储

像一堆数组一样,这里我们尝试打印二维数组的每个元素

二维数组在内存中也是连续存放的

为什么二维数组的 行 可以省略 列 不可以省略。在内存中它是连续存放的,当连续存放时可以不知道有几行,但必须要知道一行有几个元素,因为只有知道一行有几个元素时,下一行放到哪才是确定的 。 如图:

二维数组是【一维数组】的数组 (可以这么理解)

// ## //

三、数组越界

  • 数组的下标是有范围限制的。
  • 数组的下标规定是从零开始的,如果数组有n个元素,最后一个元素的下标就是 n-1. 所以数组的下标如果小于0,或者大于n-1,就是数组越界访问了,超出了数组合法空间的访问。
  • C语言本身是不做数组下标的越界检查,编译器也不一定报错,但是编译器不会报错,并不意味着程序就是正确的
  • 所以程序员写代码时,最好自己做越界的检查。

二维数组的行和列也可能存在越界

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-10-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、一维数组的创建和初始化
    • 1.1数组的创建方式
    • 1.2数组的初始化
    • 1.3一维数组的使用
    • 1.4一维数组在内存中的存储
  • 二、二维数组的创建和初始化
    • 2.1二维数组的创建 & 初始化
    • 2.2 二维数组的使用
    • 2.3 二维数组在内存中的存储
  • 三、数组越界
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档