Kyle <kaf@nwlink.com> writes:
> Is it possible to make a compiled C function take an array as an
> argument?
Sure, although disassembling the array is not quite trivial (a Postgres
array is not the same as a C array). In the 7.1 code, there is a
deconstruct_array() function in src/backend/utils/adt/arrayfuncs.c
that will help.
> Also, how do I return an SQL NULL from a function?
In 7.0, you don't. In 7.1, see src/backend/utils/fmgr/README.
regards, tom lane