在編碼時如何使用\r與\n,兩者的區(qū)別
\r與\n到底有何區(qū)別,編碼的時候又應該如何使用,我們下面來了解一下。
區(qū)別:
\r:
全稱:carriage return (carriage是“字車”的意思,打印機上的一個部件)
簡稱:return
縮寫:r
ASCII碼:13
作用:把光標移動到當前行的最左邊
\n:
全稱:new line
別名:line feed
縮寫:n
ASCII碼:10
作用:把光標向下移動一行
不同操作系統(tǒng)怎樣表示“回車+換行”(即一行的結束):
Unix、Linux:\n表示回車+換行,\r沒什么意義
Windows、DOS:\r\n表示回車+換行,順序不能變
Mac:\r表示回車+換行
歷史:
機械的英文打字機:在打字機上,有一個部件叫“字車”(carriage),每輸入一個單詞,“字車”就前進一格。當輸滿一行后,使用者就要推動“字車”到起始位置,這時打字機會有兩個動作:“字車”歸位、滾筒(roller)上卷一行(相當于“字車”下移一行),以便開始輸入下一行。這兩個動作合起來叫做“回車”,相當于現(xiàn)在鍵盤中的“Enter”鍵。
電傳打字機:(Teletype Model 33,Linux/Unix下的tty概念也來自于此)每秒鐘可以打10個字符。但是它有一個問題,就是打完一行換行的時候,要用去0.2秒,正好可以打兩個字符。要是在這0.2秒里面,又有新的字符傳過來,那么這個字符將丟失。
于是,研制人員想了個辦法解決這個問題,就是在每行后面加兩個表示結束的字符。一個叫做“回車(return)”,告訴打字機把打印頭定位在左邊界;另一個叫做“換行(newline)”,告訴打字機把紙向下移一行。后來這兩個動作被縮寫為“\r”和“\n”。
編程語言中如何使用:
因為Unix中是用“\n”表示一行的結束,所以在C語言(以及其他C語言的繼承者,比如C++, Java)中可以直接使用“\n”,在不同的操作系統(tǒng)中會被自動轉換成相應的字符(比如在Windows中會被轉成“\r\n”)。
以上就是本文的全部內(nèi)容,希望大家能夠喜歡。
相關文章
Spring Task 動態(tài)修改任務執(zhí)行計劃cron方式
這篇文章主要介紹了Spring Task 動態(tài)修改任務執(zhí)行計劃cron方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11圖文講解Java中實現(xiàn)quickSort快速排序算法的方法
這篇文章主要介紹了Java中實現(xiàn)quickSort快速排序算法的方法,文章最后還介紹了一種單向掃描的實現(xiàn)方法,需要的朋友可以參考下2016-05-05SpringBoot如何根據(jù)目錄結構生成API接口前綴
這篇文章主要介紹了SpringBoot如何根據(jù)目錄結構生成API接口前綴,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02SpringBoot在生產(chǎn)快速禁用Swagger2的方法步驟
這篇文章主要介紹了SpringBoot在生產(chǎn)快速禁用Swagger2的方法步驟,使用注解關閉Swagger2,避免接口重復暴露,非常具有實用價值,需要的朋友可以參考下2018-12-12jdk8?FunctionalInterface注解源碼解讀
這篇文章主要介紹了jdk8?FunctionalInterface注解源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-11-11