回車,ASCII碼13,"\r"
換行,ASCII碼10,"\n"
空格,ASCII碼32
Return = CR = 13 = '\x0d'
NewLine = LF = 10 = '\x0a'linux
回車符號和換行符號產生背景windows
關於「回車」(carriage return)和「換行」(line feed)這兩個概念的來歷和區別。
在計算機尚未出現以前,有一種叫作電傳打字機(Teletype Model 33)的玩意,每秒鐘能夠打10個字符。可是它有一個問題,就是打完一行換行的時候,要用去0.2秒,正好能夠打兩個字符。要是在這0.2秒裏面,又有新的字符傳過來,那麼這個字符將丟失。
因而,研製人員想了個辦法解決這個問題,就是在每行後面加兩個表示結束的字符。一個叫作「回車」,告訴打字機把打印頭定位在左邊界;另外一個叫作「換行」,告訴打字機把紙向下移一行。
這就是「換行」和「回車」的來歷,從它們的英語名字上也能夠看出一二。
後來,計算機發明瞭,這兩個概念也就被般到了計算機上。那時,存儲器很貴,一些科學家認爲在每行結尾加兩個字符太浪費了,加一個就能夠。因而,就出現了分歧。
Unix系統裏,每行結尾只有「<換行>」,即「\n」;Windows系統裏面,每行結尾是「 <回車><換行>」,即「\r\n」;Mac系統裏,每行結尾是「<回車>」。一個直接後果是,Unix/Mac系統下的文件在Windows裏打開的話,全部文字會變成一行;而Windows裏的文件在Unix/Mac下打開的話,在每行的結尾可能會多出一個^M符號編輯器
windows建立的文件是 \n\r結束的, 而linux,mac這種unix類系統是\n結束的。spa
因此unix的文本到windows會出現換行丟失(ultraedit這種軟件能夠正確識別); 而反過來就會出現^M的符號了操作系統
Windows等操做系統用的文本換行符和UNIX/Linux操做系統用的不一樣,Windows系統下輸入的換行符在UNIX/Linux下不會顯示爲「換行」,而是顯示爲 ^M 這個符號(這是Linux等系統下規定的特殊標記,佔一個字符大小,不是 ^ 和 M 的組合,打印不出來的)。Linux下不少文本編輯器(命令行)會在顯示這個標記以後,補上一個本身的換行符,以免內容混亂(只是用於顯示,補充的換行符不會寫入文件,有專門的命令將Windows換行符替換爲Linux換行符)。 UNIX/Linux系統下的換行符在Windows系統的文本編輯器中會被忽略,整個文本會亂成一團。命令行
windows換行是\r\n,十六進制數值是:0D0A。
LINUX換行是\n,十六進制數值是:0A
因此在linux保存的文件在windows上用記事本看的話會出現黑點,咱們能夠在LINUX下用命令把linux的文件格式轉換成win格式的。
unix2dos 是把linux文件格式轉換成windows文件格式
dos2unix 是把windows格式轉換成linux文件格式。3d
linux下刪除windows換行符^Munix
OJ判題時發現一個問題:用%c讀入的代碼都會報wa。後來發現跟scanf有關。在linux下使用%c會讀到\n和\r兩個字符。因此須要將^M(也就是\r)字符刪掉
刪除方法很多。找了一個比較簡單的。
要將a.txt裏的^M去掉並寫入b.txt,則使用以下指令cat a.txt | tr -d "^M" > b.txt
注意:語句中的^M是經過ctrl+V, ctrl+M輸入的。特指/r字符ci
unix 下換行符只有: \r
Dos 下換行符有:\r\n
具體的, \r的ascii 碼是:14
\n的ascii 碼是:10it
信 息在計算機上是用二進制表示的,這種表示法讓人理解就很困難。所以計算機上都配有輸入和輸出設備,這些設備的主要目的就是,以一種人類可閱讀的形式將信息 在這些設備上顯示出來供人閱讀理解。爲保證人類和設備,設備和計算機之間能進行正確的信息交換,人們編制的統一的信息交換代碼,這就是ASCII碼錶,它的全稱是「美國信息交換標準代碼」。 |
八進制 | 十六進制 | 十進制 | 字符 | 八進制 | 十六進制 | 十進制 | 字符 |
---|---|---|---|---|---|---|---|
00 | 00 | 0 | nul | 100 | 40 | 64 | @ |
01 | 01 | 1 | soh | 101 | 41 | 65 | A |
02 | 02 | 2 | stx | 102 | 42 | 66 | B |
03 | 03 | 3 | etx | 103 | 43 | 67 | C |
04 | 04 | 4 | eot | 104 | 44 | 68 | D |
05 | 05 | 5 | enq | 105 | 45 | 69 | E |
06 | 06 | 6 | ack | 106 | 46 | 70 | F |
07 | 07 | 7 | bel | 107 | 47 | 71 | G |
10 | 08 | 8 | bs | 110 | 48 | 72 | H |
11 | 09 | 9 | ht | 111 | 49 | 73 | I |
12 | 0a | 10 | nl | 112 | 4a | 74 | J |
13 | 0b | 11 | vt | 113 | 4b | 75 | K |
14 | 0c | 12 | ff | 114 | 4c | 76 | L |
15 | 0d | 13 | er | 115 | 4d | 77 | M |
16 | 0e | 14 | so | 116 | 4e | 78 | N |
17 | 0f | 15 | si | 117 | 4f | 79 | O |
20 | 10 | 16 | dle | 120 | 50 | 80 | P |
21 | 11 | 17 | dc1 | 121 | 51 | 81 | Q |
22 | 12 | 18 | dc2 | 122 | 52 | 82 | R |
23 | 13 | 19 | dc3 | 123 | 53 | 83 | S |
24 | 14 | 20 | dc4 | 124 | 54 | 84 | T |
25 | 15 | 21 | nak | 125 | 55 | 85 | U |
26 | 16 | 22 | syn | 126 | 56 | 86 | V |
27 | 17 | 23 | etb | 127 | 57 | 87 | W |
30 | 18 | 24 | can | 130 | 58 | 88 | X |
31 | 19 | 25 | em | 131 | 59 | 89 | Y |
32 | 1a | 26 | sub | 132 | 5a | 90 | Z |
33 | 1b | 27 | esc | 133 | 5b | 91 | [ |
34 | 1c | 28 | fs | 134 | 5c | 92 | \ |
35 | 1d | 29 | gs | 135 | 5d | 93 | ] |
36 | 1e | 30 | re | 136 | 5e | 94 | ^ |
37 | 1f | 31 | us | 137 | 5f | 95 | _ |
40 | 20 | 32 | sp | 140 | 60 | 96 | ' |
41 | 21 | 33 | ! | 141 | 61 | 97 | a |
42 | 22 | 34 | " | 142 | 62 | 98 | b |
43 | 23 | 35 | # | 143 | 63 | 99 | c |
44 | 24 | 36 | $ | 144 | 64 | 100 | d |
45 | 25 | 37 | % | 145 | 65 | 101 | e |
46 | 26 | 38 | & | 146 | 66 | 102 | f |
47 | 27 | 39 | ` | 147 | 67 | 103 | g |
50 | 28 | 40 | ( | 150 | 68 | 104 | h |
51 | 29 | 41 | ) | 151 | 69 | 105 | i |
52 | 2a | 42 | * | 152 | 6a | 106 | j |
53 | 2b | 43 | + | 153 | 6b | 107 | k |
54 | 2c | 44 | , | 154 | 6c | 108 | l |
55 | 2d | 45 | - | 155 | 6d | 109 | m |
56 | 2e | 46 | . | 156 | 6e | 110 | n |
57 | 2f | 47 | / | 157 | 6f | 111 | o |
60 | 30 | 48 | 0 | 160 | 70 | 112 | p |
61 | 31 | 49 | 1 | 161 | 71 | 113 | q |
62 | 32 | 50 | 2 | 162 | 72 | 114 | r |
63 | 33 | 51 | 3 | 163 | 73 | 115 | s |
64 | 34 | 52 | 4 | 164 | 74 | 116 | t |
65 | 35 | 53 | 5 | 165 | 75 | 117 | u |
66 | 36 | 54 | 6 | 166 | 76 | 118 | v |
67 | 37 | 55 | 7 | 167 | 77 | 119 | w |
70 | 38 | 56 | 8 | 170 | 78 | 120 | x |
71 | 39 | 57 | 9 | 171 | 79 | 121 | y |
72 | 3a | 58 | : | 172 | 7a | 122 | z |
73 | 3b | 59 | ; | 173 | 7b | 123 | { |
74 | 3c | 60 | < | 174 | 7c | 124 | | |
75 | 3d | 61 | = | 175 | 7d | 125 | } |
76 | 3e | 62 | > | 176 | 7e | 126 | ~ |
77 | 3f | 63 | ? | 177 | 7f | 127 | del |