5、原来可以这样理解C语言_数组(5)sizeof 计算数组元素个数

embedded/2025/1/22 16:37:45/

目录

5. sizeof 计算数组元素个数


5. sizeof 计算数组元素个数

         在遍历数组的时候,我们经常想知道数组的元素个数,那C语⾔中有办法使⽤程序计算数组元素个数 吗?

         答案是有的,可以使⽤sizeof。 sizeof 中C语⾔是⼀个关键字,是可以计算类型或者变量⼤⼩的,其实 ⼤⼩。

        ⽐如:

 #include <stido.h>int main(){int arr[10] = {0};printf("%d\n", sizeof(arr));return 0;}

        这⾥输出的结果是40,计算的是数组所占内存空间的总⼤⼩,单位是字节

        我们⼜知道数组中所有元素的类型都是相同的,那只要计算出⼀个元素所占字节的个数,数组的元素 个数就能算出来。这⾥我们选择第⼀个元素算⼤⼩就可以。

 #include <stido.h>int main(){int arr[10] = {0};printf("%d\n", sizeof(arr[0]));//计算⼀个元素的⼤⼩,单位是字节return 0;}

接下来就能计算出数组的元素个数:

 #include <stido.h>int main(){int arr[10] = {0};int sz = sizeof(arr)/sizeof(arr[0]);printf("%d\n", sz);return 0;}

这⾥的结果是:10,表⽰数组有10个元素。

        以后在代码中需要数组元素个数的地⽅就不⽤固定写死了,使⽤上⾯的计算,不管数组怎么变化,计 算出的⼤⼩也就随着变化了。


http://www.ppmy.cn/embedded/156095.html

相关文章

工业相机 SDK 二次开发-Halcon 插件

本文介绍了 Halcon 连接相机时插件的使用。通过本套插件可连接海康 的工业相机。 一. 环境配置 1. 拷贝动态库 在 用 户 安 装 MVS 目 录 下 按 照 如 下 路 径 Development\ThirdPartyPlatformAdapter 找到目录为 HalconHDevelop 的文 件夹&#xff0c;根据 Halcon 版本找到对…

《在ArkTS中实现模型的可视化调试和监控:探索与实践》

在当今人工智能与鸿蒙Next深度融合的时代&#xff0c;利用ArkTS开发高效智能应用成为开发者们关注的焦点。而模型的可视化调试和监控对于确保模型的准确性和性能至关重要&#xff0c;本文将深入探讨在ArkTS中实现这一目标的方法和实践。 ArkTS与模型开发基础 ArkTS作为一种基…

包装生产线监控与管理系统

在当今快速迭代的工业4.0时代&#xff0c;包装行业正经历着前所未有的变革。从传统的机械化生产到如今的智能化升级&#xff0c;每一步都凝聚着对效率、品质与可持续性的不懈追求。在这一背景下&#xff0c;HiWoo Scada平台以其创新的本地化监控系统&#xff0c;为包装生产线带…

C语言小任务——1000以内含有9的数字

步骤 第一步&#xff1a;分类 含有九的可能的情况&#xff1a; 个位有9&#xff0c;十位有9&#xff0c;百位有9&#xff0c;而根据组合数&#xff0c;我们可以得出&#xff0c;一共有7种情况&#xff0c;分别是 9##&#xff0c;#9#&#xff0c;##9, 99#&#xff0c;9#9,#…

AIP-123 资源类型

编号123原文链接AIP-123: Resource types状态批准创建日期2019-05-12更新日期2019-05-12 大多数API发布了用户可以创建、获取和操作的 资源 &#xff08;主要是名词&#xff09;。API可以合理的、自由的命名资源类型&#xff08;在AIP要求的范围内&#xff09;&#xff0c;只要…

Chromium 132 编译指南 Mac 篇(四)- 获取源代码

1. 引言 在 Chromium 132 的开发之旅中&#xff0c;获取源代码是一个至关重要的里程碑。本文将引导您完成这一关键步骤&#xff0c;为后续的编译和开发工作奠定坚实的基础。无论您是出于学习目的还是计划开发自己的浏览器项目&#xff0c;掌握获取 Chromium 源码的方法都是一项…

LoadBalancer负载均衡服务调用

LoadBalancer LoadBalancer&#xff08;负载均衡器&#xff09;是Spring Cloud中的一个关键组件&#xff0c;用于在微服务架构中实现服务请求的负载均衡。它的主要作用是将客户端的请求分发到多个服务实例上&#xff0c;以提高系统的可用性、性能和容错能力。通过LoadBalancer&…

Go项目实战-让自定义Error支持Go的errors.Is判定以及原型模式的应用

经过前面三节高代码强度的学习&#xff0c;相信大家都已经有点累了&#xff0c;本节我们不着急继续“赶路”&#xff0c;休息片刻&#xff01;我们换个轻松点的话题&#xff0c;聊一聊咱们项目定制化Error--AppError 怎么支持Go语言的 errors.Is 判定&#xff0c;以及项目预定义…