/r/n和/n的區(qū)別 c語(yǔ)言介紹
發(fā)布時(shí)間:2024-06-09 16:36:16來(lái)源:
在 C 語(yǔ)言中,
\r
和 \n
是兩個(gè)常見(jiàn)的轉(zhuǎn)義字符,它們分別代表回車(Carriage Return)和換行(Line Feed)。然而,/r/n
并不是 C 語(yǔ)言中的有效轉(zhuǎn)義序列,你可能是在提及 \r\n
,這是 Windows 系統(tǒng)中常見(jiàn)的換行符組合。
-
\r (回車)
- 在 ASCII 中,回車字符的編碼是 13(或 0x0D in hex)。
- 最初,回車字符被用來(lái)將打印頭(在打印機(jī)或電傳打字機(jī)上)移回行首,但并不移動(dòng)到下一行。
- 在現(xiàn)代系統(tǒng)中,它的實(shí)際功能可能因環(huán)境和程序而異。
-
\n (換行)
- 在 ASCII 中,換行字符的編碼是 10(或 0x0A in hex)。
- 換行字符用于移動(dòng)到下一行的開(kāi)始位置。
- 在大多數(shù)現(xiàn)代系統(tǒng)中,它都被視為文本文件中的換行符。
-
\r\n (回車換行組合)
- 這是 Windows 系統(tǒng)中常見(jiàn)的換行符組合。
- 當(dāng)在 Windows 系統(tǒng)上編寫(xiě)文本文件時(shí),每行的結(jié)尾通常使用
\r\n
而不是僅僅\n
。 - 當(dāng)在跨平臺(tái)編程時(shí),這一點(diǎn)尤其重要,因?yàn)?UNIX/Linux 和 macOS 通常只使用
\n
作為換行符。
在 C 語(yǔ)言中,你可以這樣使用它們:
c
|
int main() { |
printf("Hello\rWorld\n"); // 這可能會(huì)在控制臺(tái)上顯示為 "World" 并開(kāi)始新行,因?yàn)?\r 將光標(biāo)移回行首 |
printf("Hello\nWorld"); // 這將輸出 "Hello" 然后開(kāi)始新行,接著輸出 "World" 并再次開(kāi)始新行 |
// 在 Windows 上,如果你想創(chuàng)建一個(gè)新的文本行,你可能會(huì)使用: |
FILE *file = fopen("example.txt", "w"); |
if (file != NULL) { |
fprintf(file, "Hello\r\nWorld"); // 在 Windows 文本文件中創(chuàng)建一個(gè)新的行 |
fclose(file); |
} |
return 0; |
} |
注意:在 C 語(yǔ)言中,字符串字面量使用雙引號(hào)(")而不是斜杠(/)。所以 /r/n
是無(wú)效的,而 \r\n
才是正確的。
(責(zé)編: admin1)
免責(zé)聲明:本文為轉(zhuǎn)載,非本網(wǎng)原創(chuàng)內(nèi)容,不代表本網(wǎng)觀點(diǎn)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實(shí),對(duì)本文以及其中全部或者部分內(nèi)容、文字的真實(shí)性、完整性、及時(shí)性本站不作任何保證或承諾,請(qǐng)讀者僅作參考,并請(qǐng)自行核實(shí)相關(guān)內(nèi)容。