With no offense intended, I can't help noting the irony of the
following paragraph appearing in a message in the company of
others that address Unix "bloat".
'\cX' A mechanism that allows usage of the
non-printable
(ASCII and compatible) control codes 0 to 31: to cre-
ate the printable representation of a control code the
numeric value 64 is added, and the resulting ASCII
character set code point is then printed, e.g., BEL is
'7 + 64 = 71 = G'. Whereas historically circumflex
notation has often been used for visualization pur-
poses of control codes, e.g., '^G', the reverse
solidus notation has been standardized: '\cG'. Some
control codes also have standardized (ISO 10646, ISO
C) alias representations, as shown above (e.g., '\a',
'\n', '\t'): whenever such an alias exists S-nail will
use it for display purposes. The control code NUL
('\c@') ends argument processing without producing
further output.
Except for the ISO citations, this paragraph says the same
thing more succinctly.
'\cX' represents a nonprintable character Y in terms of the
printable character X whose binary code is obtained
by adding 0x40 (decimal 64) to that for Y. (In some
historical contexts, '^' plays the role of '\c'.)
Alternative standard representations for certain
nonprinting characters, e.g. '\a', '\n', '\t'
above,
are preferred by S-nail. '\c@' (NUL) serves as a
string terminator regardless of following characters.
And this version, 1/3 the length of the original, tells all
one really needs to know.
'\cX' represents a nonprintable character Y in terms of the
printable character X whose binary code is obtained
by adding 0x40 (decimal 64) to that for Y. '\c@'
(NUL) serves as a string terminator regardless of
following characters.
Doug]