如何用 sizeof 操作符在 C 语言中查找数组的大小 您所在的位置:网站首页 char类型数组长度如何计算 如何用 sizeof 操作符在 C 语言中查找数组的大小

如何用 sizeof 操作符在 C 语言中查找数组的大小

2024-05-05 10:43| 来源: 网络整理| 查看: 265

原文: How to Find the Size of an Array in C with the sizeof Operator

在用 C 语言编程时,有时你可能需要知道一个数组的大小。

例如,当你想遍历存储在数组中的所有元素,以确定一个特定的值是否存在。

在这篇文章中,你将学习如何使用 sizeof() 操作符查找一个数组的大小。

让我们深入了解一下吧。

C 语言中的数组是什么

数组让你在同一个变量名下存储多个值。

C 语言中的数组是相同数据类型的项目的集合。这意味着你可以创建一个只有整数值的数组或一个字符数组,等等。

要在 C 语言中创建一个数组,你首先需要指定数组要存储的值的数据类型。

然后,你给数组一个名称,后面是一对方括号,[]。

在方括号内,你可以指定数组的大小。

所以,这里你可以创建一个名为 faveNumbers 的 int 类型的数组,它将包含 5 个整数:

int faveNumbers[5];

要在数组声明时在其内部插入数值,请使用赋值运算符 =,和一对大括号 {}。

在大括号内,输入项目并以逗号分隔:

int faveNumbers[5] = {7, 33, 13, 9, 29};

上面的代码创建了一个数组,名称为 faveNumbers,其中有 5 个整数,7, 33, 13, 9, 29。

你也可以把上面的代码写成这样:

int faveNumbers[] = {7, 33, 13, 9, 29};

在上面的例子中,我没有指定数组的大小。

然而,编译器可以知道它的大小是 5,因为我在初始化它时给了它 5 个元素。

这里需要注意的是,一旦你声明了数组,你就不能改变它的大小和类型,因为它们有固定的长度。

如何在 C 语言中找到一个数组的大小

C 语言没有提供一个内置的方法来获取一个数组的大小。

尽管如此,它确实有内置的 sizeof 操作符,你可以用它来确定大小。

使用 sizeof 运算符的一般语法如下:

datatype size = sizeof(array_name) / sizeof(array_name[index]);

让我们把它分解一下:

size 是存储数组大小的变量名,datatype 指定存储在 size 中的数据值的类型。sizeof(array_name) 计算数组的大小,单位是字节。sizeof(array_name[index]) 计算数组中一个元素的大小。

现在,让我们看看这个操作的效果,并把它分解成各个步骤,看看它是如何工作的。

首先,sizeof 操作符返回分配给数组的内存总量,单位是字节。

#include int main() { // 我的数组 int faveNumbers[] = {7, 33, 13, 9, 29}; // 使用 sizeof 来获取数组的字节大小 size_t size = sizeof(faveNumbers); printf("The size is %d bytes \n", size); } // 输出 // The size is 20 bytes

然而,上面的代码并没有直接计算出数组的大小。

你将需要一些额外的编程逻辑,像这样:

array_length = (total size of the array) / (size of the first element in the array)

要想知道数组的长度,你需要用总的内存量除以一个元素的大小——这种方法是有效的,因为数组存储的是相同类型的项目。

所以,你可以用总的字节数除以数组中第一个元素的大小。

要访问一个数组中的第一个元素,要指定名称,并在方括号中放入 0。

在编程和一般的计算机科学中,索引总是从 0 开始,所以数组中的第一个元素的索引总是 0。

#include int main() { int faveNumbers[] = {7, 33, 13, 9, 29}; size_t size = sizeof(faveNumbers) / sizeof(faveNumbers[0]); printf("The length of the array is %d \n", size); } // 输出 // The length of the array is 5

这里需要注意的是,数据类型的大小将因平台而异。

总结

希望这篇文章能帮助你了解如何使用内置的 sizeof 操作符在 C 语言中确定数组的大小。

谢谢你阅读本文,祝你编码愉快!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有