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 的元素个数。
*/