#include <vtksys/Configure.h>
Go to the source code of this file.
Macros | |
#define | kwsys_ns(x) vtksys##x |
#define | kwsysEXPORT vtksys_EXPORT |
#define | kwsysSystem_Parse_CommandForUnix kwsys_ns(System_Parse_CommandForUnix) |
Functions | |
kwsysEXPORT char ** | kwsysSystem_Parse_CommandForUnix (const char *command, int flags) |
Parse a unix-style command line string into separate arguments. More... | |
#define kwsysEXPORT vtksys_EXPORT |
#define kwsysSystem_Parse_CommandForUnix kwsys_ns(System_Parse_CommandForUnix) |
kwsysEXPORT char** kwsysSystem_Parse_CommandForUnix | ( | const char * | command, |
int | flags | ||
) |
Parse a unix-style command line string into separate arguments.
On success, returns a pointer to an array of pointers to individual argument strings. Each string is null-terminated and the last entry in the array is a NULL pointer (just like argv). It is the caller's responsibility to free() the strings and the array of pointers to them.
On failure, returns NULL. Failure occurs only on invalid flags or when memory cannot be allocated; never due to content of the input string. Missing close-quotes are treated as if the necessary closing quote appears.
By default single- and double-quoted arguments are supported, and any character may be escaped by a backslash. The flags argument is reserved for future use, and must be zero (or the call will fail).