C语言中求数组的长度

57 阅读1分钟

C语言中求数组的长度

在C语言中,不能直接打印数组,因为数组名本身表示数组中首个元素的地址。如果直接打印数组名(指针),将会输出数组中的首个元素地址而不是整个数组。

要想打印整个数组,可以使用循环遍历数组并逐个打印数组的每一项。以下是一个示例代码:

#include <stdio.h>

int main() {
    
    // 1.定义数组
    int arr[] = {1, 2, 3, 4, 5}; 
    
    // 2.计算数组长度
    int length = sizeof(arr) / sizeof(arr[0]); 

    for (int i = 0; i < length; i++) {
        printf("%d ", arr[i]);
    }

    return 0;
}

// 3. 输出结果为:1 2 3 4 5
       
 /*
 	解释:
 	    sizeof(arr) 是计算数组 arr 的总字节数,sizeof(arr[0]) 是计算数组 arr 中首个元素的字节数。
        通过将总字节数除以数组首个元素的字节数,可以得到数组 arr 中的元素个数。
 */