tcone:
I'm wondering if it's possible to pass an array that I haven't declared and given a name.
If you mean you want to pass in a literal constant of type array, I haven't tested it in Arduino but the following seems valid:
void myFunc(int v[])
{
}
myFunc((int[]){1,2,3});
If you want to pass in a non-constant array which does not have a symbolic name (does not correspond to a named variable), this is possible too if you provide a pointer value that points to a region of memory of the appropriate size - for this to be useful I suppose the callee would need to know or be told the size of the array.