gpt4 book ai didi

c - C中如何计算数组大小

转载 作者:行者123 更新时间:2023-11-30 20:26:53 28 4
gpt4 key购买 nike

如果我有一个将数组作为参数传递的函数。如果 size 也没有作为参数传递,是否有任何方法可以计算被调用函数中的数组大小。这是片段:

void array_size(int array[])
{
//How i can calculate the array size here
}

int main()
{
int a[]={1,2,3};
array_size(a);
}

最佳答案

array_size()函数中,“数组”是一个指针。它被转换为指向调用函数中第一个元素的指针。

如果你需要知道大小,你需要传递它。在 main() 函数中,a 是一个数组,您可以使用

计算元素数量
number_of_elements = sizeof a / sizeof *a;

然后将其传递给函数(需要更新)

array_size(a, number_of_elements);
// ^ the array is converted to a pointer to its first element

关于c - C中如何计算数组大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23653828/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com