That piece of memory is the stack.
In a programming language, parameters to a function are pushed on the stack before calling the function. All C functions are normally guaranteed to work this way, which is why you can call any C function from any library with an arbitrary number of parameters.
The number of bytes per parameter can vary due to compiler implementations. For speed reasons, C compilers (including lite-C) normally use 32 bit parameters even for char and short.
If you have a lite-C function
int foo(int a, int b, int c) { ... }
and pass the pointer of this function to a C++ program, you can then just call the pointer from C++
*fooptr(a,b,c)
and the parameters are passed correctly over to lite-C. It does not matter how many parameters the function has.