Tilde R-> Radix (ANSI and GNU Common Lisp Document)

Next: Tilde D-> Decimal, Previous: FORMAT Radix Control, Up: FORMAT Radix Control

#### 22.3.2.1 Tilde R: Radix

`~nR` prints arg in radix n. The modifier flags and any remaining parameters are used as for the `~D` directive. `~D` is the same as `~10R`. The full form is `~radix,mincol,padchar,commachar,comma-intervalR`.

If no prefix parameters are given to `~R`, then a different interpretation is given. The argument should be an integer. For example, if arg is 4:

`*`

  `~R` prints arg as a cardinal English number: `four`.

`*`

  `~:R` prints arg as an ordinal English number: `fourth`.

`*`

  `~@R` prints arg as a Roman numeral: `IV`.

`*`

  `~:@R` prints arg as an old Roman numeral: `IIII`.

For example:

     (format nil "~,,' ,4:B" 13) ⇒  "1101"
     (format nil "~,,' ,4:B" 17) ⇒  "1 0001"
     (format nil "~19,0,' ,4:B" 3333) ⇒  "0000 1101 0000 0101"
     (format nil "~3,,,' ,2:R" 17) ⇒  "1 22"
     (format nil "~,,'|,2:D" #xFFFF) ⇒   "6|55|35"

If and only if the first parameter, n, is supplied, `~R` binds *print-escape* to false, *print-radix* to false, *print-base* to n,

and *print-readably* to false.

If and only if no parameters are supplied, `~R` binds *print-base* to `10`.