Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why are non-printable ASCII characters actually printable?

Tags:

ascii

Characters, that are not alphanumeric or punctuation are termed not printable:

Codes 20hex to 7Ehex, known as the printable characters

enter image description here

So why is e.g. 005 representable (and represented by clubs)?

like image 350
Vorac Avatar asked Apr 05 '13 14:04

Vorac


People also ask

What are non ASCII printable characters?

Some of the most common non printable characters are carriage return, form feed, line feed, backspace, escape, horizontal tab and vertical tab.

What ASCII characters printable?

ASCII printable characters (character code 32-127) Codes 32-127 are common for all the different variations of the ASCII table, they are called printable characters, represent letters, digits, punctuation marks, and a few miscellaneous symbols. You will find almost every character on your keyboard.

How do I know if a character is printable?

The isprint() function checks whether a character is a printable character or not. Those characters that occupies printing space are known as printable characters. Printable characters are just the opposite of control characters which can be checked using iscntrl().

What is the significance of the non-printing character?

Non-printing characters or formatting marks are characters for content designing in word processors, which are not displayed at printing. It is also possible to customize their display on the monitor. The most common non-printable characters in word processors are pilcrow, space, non-breaking space, tab character etc.


1 Answers

Most of the original set of ASCII control characters are no longer useful, so many different vendors have recycled them as additional graphic characters, often dingbats as in your table. However, all such assignments are nonstandard, and usually incompatible with each other. If you can, it's better to use the official Unicode codepoints for these characters. (Similar things have been done with the additional block of control characters in the high half of the ISO 8859.x standards, which were already obsolete at the time they were specified. Again, use the official Unicode codepoints.)

The tiny print at the bottom of your table appears to say "Copyright 1982 Leading Edge Computer Products, Inc." That company was an early maker of IBM PC clones, and this is presumably their custom ASCII extension. You should only pay attention to the assignments for 000-031 and 127 in this table if you're writing software to convert files produced on those specific computers to a more modern format.

like image 200
zwol Avatar answered Oct 05 '22 19:10

zwol