可以在C中传递值吗?

fud*_*din 2 c

您好我正在阅读这个问题,我对如何按值传递数组感到困惑.这是一段代码,我认为应该按值传递数组.

#include <cstdio>
void foo (int arr[]);
int main()
{
    int arr[10];
    foo(arr[10]);
    return 0;
}
void foo (int arr[])
{
.......
}
Run Code Online (Sandbox Code Playgroud)

请告诉我为什么不通过价值?

谢谢

Car*_*rum 7

数组在C中的某些上下文中自动衰减为指针.函数调用是其中一个地方.也就是说,你是按值传递指针 - C没有其他方式传递参数而不是"按值".