[請問] CR與LF在螢幕上顯示有差別嗎?

作者: red0whale (red whale)   2019-04-29 16:43:37
我知道CR是回車,會把text cursor移至行首;LF是換行,在換行字元的下一個字元將會
出現在下一行。
但是當CR與LF分開輸出時,怎麼在螢幕上看起來都是換行的樣子?
例如:
printf("Hello\rWorld\nHello\r\nWorld");
結果CR、LF以及CR LF輸出的樣子都是換行,也就是上面那個例子輸出到螢幕的樣子會變
成:
Hello
World
Hello
World
為什麼不是這樣:
WorldHello
Hello
World
第二個的「World」在CR之後應該會在行首開始輸出,所以第一行應該會變成「WorldHell
o」吧?
結果輸出到螢幕的樣子居然都是換行
這是為什麼?
所以CR與LF在螢幕上顯示會有差別嗎?
作者: OrzOGC (洞八達人.拖哨天王)   2019-04-29 16:50:00
因為你是用windows
作者: loadingN (sarsaparilla)   2019-04-29 17:26:00
因為你不是用linux
作者: liaon98 (liaon98)   2019-04-29 17:52:00
Windows幫你弄好了 你用*nix系統就有差
作者: Schottky (順風相送)   2019-04-29 18:04:00
要看終端機型態而定LF 原本的意義是捲紙,也就是游標橫向位置不變,向下移到下一行。在某些終端機上你還是可以看到這行為所以 CR+LF 才是移到下一行的行首。你想成機械打字機就懂了
作者: annheilong (方格子)   2019-04-30 15:54:00
噓 windows, 因為 windows 智障

Links booklink

Contact Us: admin [ a t ] ucptt.com