Arrays are never passed by value. the rule is "arrays decay into pointers, when passed to a function". (The array name is a pointer to the first element).
You can pass structures by value though, so if you put your array as the only member of a struct, then you can pass it by value or reference.