The mapping of a command line from the ARM architecture-based
environment into arguments to
main() is implementation-specific.
The generic ARM C library supports the following:
The arguments given to
main() are the
words of the command line not including input/output redirections,
delimited by whitespace, except where the whitespace is contained
in double quotes.
A whitespace character is any character where the result of
A double quote or backslash character
\inside double quotes must be preceded by a backslash character.
An input/output redirection is not recognized inside double quotes.
In a nonhosted implementation of the ARM C library, the term interactive
device might be meaningless. The generic ARM C library
supports a pair of devices, both called
intended to handle keyboard input and VDU screen output. In the
no buffering is done on any stream connected to
:ttunless input/output redirection has occurred
if input/output redirection other than to
:tthas occurred, full file buffering is used except that line buffering is used if both
stderrwere redirected to the same file.
Using the generic ARM C library, the standard input, output
and error streams can be redirected at runtime. For example, if
a program running on a host debugger that copies the standard input
to the standard output, the following line runs the program:
mycopy < infile > outfile 2> errfile
and redirects the files as follows:
The standard input stream is redirected to
The standard output stream is redirected to
The standard error stream is redirected to
The permitted redirections are:
stderrto the same place as
stderr on the target, you must define:
File redirection is done only if either:
the invoking operating system supports it
the program reads and writes characters and has not replaced the C library functions