news 2026/7/29 5:20:12

快速了解C语言基础(6)(数组初探)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
快速了解C语言基础(6)(数组初探)

数组

数组:保存多个数据类型相同的数据。

1)数组基础

1.数组定义

类类型说明符 数组名[常量];

类型说明符:基本数据类型、构造数据类型(不能是void类型)。说明数组中保存的数据的数据类型。

数组名:遵循标识符的命名规则。

常量:数组中可以保存的元素的个数

int a[10];

sizeof(a); //40字节

char str[32]; //32字节

float array[5]; //20字节

类型说明符 数组名[] = {值1, 值2};

当数组定义时,[]中的个数省略时,必须要初始化,将来按照初始化的元素个数决定数组的元素个数。

2.数组的元素访问

数组名[下标];

[]:下标运算符

下标:代表要访问数组中的第几个元素(0--->元素个数-1)

常量、变量、表达式(结果都应该整形)

注意:

数组元素访问时,下标从0开始到元素个数-1,超出该范围,则数组越界访问。

数组名代表了数组这种类型,不能给数组名直接赋值

3.数据的初始化

如果不初始化,数据默认存放随机值。

  1. 全部初始化

int a[10] = {1234567890}

  1. 局部初始化

int a[10] = {12345}

已初始化部分按照初始化数据存储,未初始化的部分按0存储;

  1. 初始化全为0

int a[10] = {0000000000}

int a[10] = {0}

4.数据的存储形式

  1. 单一性:数组中的元素,每个元素的数据类型都一致。
  2. 有序性:数组中的元素按照a[0]-a[n]的顺序进行存储。
  3. 连续性:数组在内存中选取连续内存空间存储。

数组越界:

(1)初始化数组时,初始化的元素个数超出了数组本身的元素个数。

(2)访问数组元素时,[]中的下标超出了数组元素的访问范围。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/29 5:15:14

STM32与A5000安全芯片的物联网设备开发实践

1. 硬件选型与安全架构设计在物联网设备开发中,选择STM32F100ZE作为主控芯片搭配A5000安全芯片的方案,主要基于以下考量:STM32F100ZE作为Cortex-M3内核微控制器,具有以下关键特性:72MHz主频和16KB SRAM,满足…

作者头像 李华
网站建设 2026/7/29 5:14:41

智能车编码器里程计:从硬件连接到软件实现的精准测距指南

1. 项目概述:为什么智能车需要精确的“里程计”?在智能车竞赛中,无论是摄像头循迹、电磁导航还是其他组别,让车“知道自己走了多远”都是一个基础且核心的需求。你可能遇到过这样的场景:车子在直道上跑得飞快&#xff…

作者头像 李华
网站建设 2026/7/29 5:13:53

DIY桌面级3D激光扫描仪:从硬件搭建到点云生成全流程解析

1. 项目概述:从零打造一台桌面级3D激光扫描仪几年前,当我第一次接触3D打印时,一个念头就挥之不去:如果能把自己手边的实物,比如一个精巧的模型、一件有纪念意义的小物件,轻松地转换成数字模型,那…

作者头像 李华
网站建设 2026/7/29 5:11:55

PTFT图像加密算法原理与Matlab实现详解

1. 项目概述在数字图像安全领域,相位截断傅立叶变换(PTFT)加密算法因其独特的非线性特性正成为研究热点。这个项目实现了基于双随机相位编码和相位截断操作的图像加密方案,通过Matlab完整复现了加密/解密流程。不同于传统傅立叶变换加密,PTFT…

作者头像 李华
网站建设 2026/7/29 5:09:32

Formlabs软件更新深度解析:草稿模式与智能支撑如何提升3D打印效率

1. 项目概述:一次软件更新如何重塑硬件性能最近,Formlabs发布了一次软件更新,在圈内引起了不小的讨论。如果你手头正好有Formlabs的机器,比如Form 3或Form 3L,这次更新绝对值得你立刻去操作一下。官方宣称这次更新能“…

作者头像 李华