| 轉義符 | 名稱 | ASCII | 作用 |
|---|---|---|---|
\r (CR) | Carriage Return 回車 | 0x0D (13) | 光標移至**行首**,不換行 |
\n (LF) | Line Feed 換行 | 0x0A (10) | 光標移至**下一行**,不歸行首 |
\r\n (CRLF) | 回車換行 | 0x0D 0x0A | **真正的換行**:歸行首 + 下一行 |
\n 即換行,內核終端驅動自動補 \r;\r\n 為換行;\r 為換行。\n;\n 轉為平台換行序列 (Windows→\r\n, Unix→\n);| 場景 | 問題 | 解決 |
|---|---|---|
| Windows 讀 Unix 文件 | 行末無 \r,某舊版工具顯示混亂 | 用 Notepad++/VS Code 轉換換行格式,或 dos2unix/unix2dos |
| 網絡協議 (HTTP/SMTP) | 規範要求 \r\n,只發 \n 導致解析失敗 | 硬編碼 "\r\n" 或用庫函數 |
| 嵌入式串口調試 | 終端只識別 \r\n | printf("OK\r\n") 而非 printf("OK\n") |
| Git 跨平台協作 | 提交混雜換行符 | .gitattributes: * text=auto eol=lf 強制倉庫存 LF,檢出按平台轉換 |