I'll just show an example:
I have:
int myfunc (text *a, text* b)
{
return(12);
}
in psql:
test=# CREATE FUNCTION myfunc(text, text)
test-# RETURNS integer
test-# AS
'/home/hchapman/src/nms/wwp_database/c-functions/call_dynamic.so'
test-# LANGUAGE 'C';
CREATE
test=# SELECT myfunc('aa','ss') as result;
result
--------
12
(1 row)
test=# SELECT myfunc('aa',NULL) as result;
result
--------
(1 row)
test=#