If you're talking about the command line arguments that your program
receives, that is not space that your program allocates or has any control over. The space for your program's arguments and environment is set up by the execve() system call in the program that invokes yours, and a limit on the total size is enforced at that time.
From /usr/include/linux/limits.h:
Code:
#define ARG_MAX 131072 /* # bytes of args + environ for exec() */
Of course if your program
modifies its argument strings, it is up to you not to exceed the space that they originally used.