If the value of the argument is greater than the number of clauses, nothing is printed.
However, if the last clause separator is ~:;
instead of ~;
, then the last clause serves as a default clause.
and then use it like this:
Note that the control string actually contains two ~[~]
directives—both of which use to select the clause to use. The first consumes between zero and two arguments, while the second consumes one more, if available. **FORMAT**
will silently ignore any arguments not consumed while processing the control string.
Note that either clause can be empty, but the directive must contain a ~;
.
Finally, with an at-sign modifier, the directive can have only one clause. The directive consumes one argument and, if it’s non-**NIL**
, processes the clause after backing up to make the argument available to be consumed again.