回車和換行
今天終於明白了“回車”和“換行”這兩個概念的由來和區別。
在計算機出現之前,有壹種東西叫33型電傳打字機,每秒鐘可以打出10個字符。但是它有壹個問題,就是打壹個新行需要0.2秒,就兩個字符。如果壹個新字符在0.2秒內出現,那麽這個字符將會丟失。
於是,開發者想了壹個辦法來解決這個問題,就是在每行之後加兩個字符表示結束。壹個叫“回車”,它告訴打字機把打印頭定位在左邊界;另壹種叫做“換行”,它告訴打字機將紙向下移動壹行。
這就是“換行”和“回車”的由來,從它們的英文名中也能看出壹二。
後來發明了計算機,把這兩個概念推廣到計算機上。那時候內存很貴,有些科學家覺得每行末尾加兩個字太浪費了。加壹個就好。結果就出現了分歧。
在Unix系統中,只有" ",即" \ n ";在Windows系統中,每壹行都以“& lt回到車> ",即" \ r \ n ";在Mac系統中,每壹行都以" "結尾。壹個直接的後果是,如果在Windows中打開Unix/Mac系統下的文件,所有的字都會變成壹行;在Unix/Mac下打開Windows中的文件時,每行的末尾可能會多壹個M符號。
c語言編程(windows系統)\r是返回到這壹行的開頭,會覆蓋上壹行的輸出。
比如:
int main() {
cout & lt& lt“哈哈哈”& lt& lt" \ r " & lt& lt《西溪》;
}
最後只顯示西西,覆蓋哈哈哈。
\n是回車+換行。將光標移動到行首,然後移動到下壹行,即下壹行的開頭。
int main() {
cout & lt& lt“哈哈哈”& lt& lt" \ n " & lt& lt《西溪》;
}
然後顯示
哈哈哈
是我自己總結的。
/t相當於鍵盤的Tab鍵,/n新行,/r回車,基本概念應該是回車表示回到前面,換行表示換壹行。
不同的操作系統有不同的換行操作:
/r Mac
/n Unix/Linux
/r/n Windows