c语言数组长度怎么看

在C语言中,数组是一种非常重要的数据结构,它可以用来存储多个相同类型的数据,数组的长度是指数组中元素的数量,也就是数组所占用的内存空间的大小,了解如何查看数组的长度对于编写和调试C语言程序非常重要,本文将详细介绍如何在C语言中查看数组的长度。

c语言数组长度怎么看
(图片来源网络,侵删)

1、声明数组时指定长度

在C语言中,声明数组时可以直接指定数组的长度。

int arr[10]; // 声明一个长度为10的整型数组

在这个例子中,数组arr的长度就是10,表示这个数组可以存储10个整型数据。

2、使用sizeof运算符计算数组长度

在C语言中,可以使用sizeof运算符来计算数组的长度。sizeof运算符返回一个对象或类型所占用的字节数。

#include <stdio.h>
int main() {
    int arr[10]; // 声明一个长度为10的整型数组
    printf("数组长度为:%lu
", sizeof(arr) / sizeof(arr[0])); // 输出数组长度
    return 0;
}

在这个例子中,我们使用sizeof(arr) / sizeof(arr[0])来计算数组的长度。sizeof(arr)返回整个数组所占用的字节数;sizeof(arr[0])返回数组中单个元素所占用的字节数,将整个数组所占用的字节数除以单个元素所占用的字节数,就可以得到数组的长度。

3、使用指针遍历数组并计算长度

除了使用sizeof运算符计算数组长度外,还可以使用指针遍历数组并计算长度,这种方法适用于动态分配内存的数组。

#include <stdio.h>
#include <stdlib.h>
int main() {
    int *arr = (int *)malloc(10 * sizeof(int)); // 动态分配一个长度为10的整型数组
    int length = 0; // 初始化数组长度为0
    int *p = arr; // 定义一个指向数组首元素的指针
    while (*p != '