Yes, vector() works indeed similar as described by Superku. It is for passing vector pointers to functions, not for generating vectors. To generate vectors or any other structs in a C program, use either sys_malloc or a static array.

vector() does not "clear" its vectors because there is nothing to clear. Only vectors that you have dynamically generated must be cleared.