C语言数组长度函数全解302


在C语言中,数组是一种数据结构,用于存储相同类型元素的集合。每个元素都通过其索引(从0开始)进行访问。确定数组长度非常重要,因为它可以帮助我们遍历数组或执行其他与数组相关的操作。

使用sizeof()运算符获取数组长度

C语言提供了一个内置运算符 sizeof(),它可以返回数组中包含的元素数量。该运算符返回数组中所有元素所占字节数,然后除以单个元素的大小以获得数组长度。例如:
```c
int arr[] = {1, 2, 3, 4, 5};
int length = sizeof(arr) / sizeof(int);
printf("数组长度:%d", length); // 输出:5
```

使用数组尾部哨兵获取数组长度

另一种确定数组长度的方法是使用数组尾部哨兵。这是在数组末尾放置一个特殊值(通常为 -1 或其他无效值)以指示数组的结束。请注意,这种方法需要显式初始化数组尾部哨兵,并且数组必须在声明时指定大小。例如:
```c
#define MAX_SIZE 10
int arr[MAX_SIZE] = {1, 2, 3, 4, -1};
int length = 0;
while (arr[length] != -1 && length < MAX_SIZE) {
length++;
}
printf("数组长度:%d", length); // 输出:4
```

使用指针遍历数组获取数组长度

我们可以使用指针遍历数组并统计非空元素的数量来计算数组长度。当指针指向数组末尾时,数组长度就确定了。例如:
```c
int *ptr = arr;
int length = 0;
while (*ptr != NULL) {
length++;
ptr++;
}
printf("数组长度:%d", length);
```

使用STL函数获取数组长度(C++)

如果使用C++标准模板库(STL),则可以使用 std::size 函数来获取数组长度。该函数返回数组中元素的数量。例如:
```cpp
#include
#include
using namespace std;
int main() {
array arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
cout

2024-11-05


上一篇:C 语言编程:发现亲和数

下一篇:C 语言常用输出函数