回車與換行的區別

區別:編程

 

  • \r:
    • 全稱:carriage return (carriage是「字車」的意思,打印機上的一個部件)
    • 簡稱:return
    • 縮寫:r
    • ASCII碼:13
    • 做用:把光標移動到當前行的最左邊
  • \n: 
    • 全稱:new line
    • 別名:line feed
    • 縮寫:n
    • ASCII碼:10
    • 做用:把光標向下移動一行

 

不一樣操做系統怎樣表示「回車+換行」(即一行的結束):編程語言

  • Unix、Linux:\n表示回車+換行,\r沒什麼意義
  • Windows、DOS:\r\n表示回車+換行,順序不能變
  • Mac:\r表示回車+換行

 

歷史:操作系統

機械的英文打字機:在打字機上,有一個部件叫「字車」(carriage),每輸入一個單詞,「字車」就前進一格。當輸滿一行後,使用者就要推進「字車」到起始位置,這時打字機會有兩個動做:「字車」歸位、滾筒(roller)上卷一行(至關於「字車」下移一行),以便開始輸入下一行。這兩個動做合起來叫作「回車」,至關於如今鍵盤中的「Enter」鍵。繼承

 

電傳打字機:(Teletype Model 33,Linux/Unix下的tty概念也來自於此)每秒鐘能夠打10個字符。可是它有一個問題,就是打完一行換行的時候,要用去0.2秒,正好能夠打兩個字符。要是在這0.2秒裏面,又有新的字符傳過來,那麼這個字符將丟失。
因而,研製人員想了個辦法解決這個問題,就是在每行後面加兩個表示結束的字符。一個叫作「回車(return)」,告訴打字機把打印頭定位在左邊界;另外一個叫作「換行(newline)」,告訴打字機把紙向下移一行。後來這兩個動做被縮寫爲「\r」和「\n」。英文

 

編程語言中如何使用:語言

由於Unix中是用「\n」表示一行的結束,因此在C語言(以及其餘C語言的繼承者,好比C++, Java)中能夠直接使用「\n」,在不一樣的操做系統中會被自動轉換成相應的字符(好比在Windows中會被轉成「\r\n」)。移動

相關文章
相關標籤/搜索