Originally, carriage return was the term for the control character in Baudot code on a teletypewriter for end of line return to beginning of line and did not include line feed. Later it was used for a mechanism or lever on a typewriter that would cause the cylinder on which the paper was held (the carriage) to return to the left side of the paper after a line of text had been typed, and would usually move the paper to the next line as well. The first power carriage return was added to electric typewriters by Smith Corona in 1960. The key for this was usually labelled "carriage return" or "return". To improve the keyboard for non-English-speakers, the symbol ↵ was introduced to mark this key, since this graphic could communicate the action of the key without using words.
In computing, the carriage return (CR) is one of the control characters in ASCII code, Unicode or EBCDIC that commands a printer or other sort of display to move the position of the cursor to the first position on the same line. It was mostly used along with line feed, a move to the next line, while carriage return precedes line feed to indicate a new line. The term derives from the above usage, as early printers often closely resembled typewriters; this control character would activate a physical carriage-return mechanism.
On printers, teletypes, and computer terminals that were not capable of displaying graphics, the carriage return was used without moving to the next line to allow characters to be placed on top of existing characters to produce character graphics, underlines, and crossed out text.
Many computer programs use the carriage return character, alone or with a line feed, to signal the end of a line of text, but other characters are also used for this function (see newline); others use it only for a paragraph break (a hard return). Some standards which introduce their own representations for line and paragraph control (for example HTML) treat carriage return and line feed as whitespace.
In ASCII and Unicode, the character code decimal 13 (or hexadecimal 0D) is defined to be carriage return. In the C programming language and many other languages influenced by it,
r denotes this character.