首页 > 解决方案 > C中的全数组长度

问题描述

我有一个关于在 C 中获取数组长度的问题。我总是得到结果 1。这个结果可能来自这样一个事实,即int有 4 个字节大,并且 4 / 4 = 1。所以问题是我没有获取整个数组的大小,其中只有一个值。

这是我的代码:

#include <stdio.h>

int getArrayLength(int array[]);

int main()
{
    int myArray[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    printf("Length of array is: %d", getArrayLength(myArray));

    return 0;
}

int getArrayLength(int array[])
{
    int size = (int) sizeof(*array) / sizeof(array[0]);
    return size;
}

也许有人可以帮我解决我的问题。

谢谢你^^

标签: arrayscsize

解决方案


推荐阅读