課程
/后端開(kāi)發(fā)
/C++
/C++遠(yuǎn)征之起航篇
endl 與 '\n'不一樣吧!??!??!
2015-04-01
源自:C++遠(yuǎn)征之起航篇 4-3
正在回答
windows 下不是 \r\n 么?
慕蓋茨9455599
"\n"表示內(nèi)容為一個(gè)回車(chē)符的字符串。std::endl是流操作子,輸出的作用和輸出"\n"類(lèi)似,但可能略有區(qū)別。std::endl輸出一個(gè)換行符,并立即刷新緩沖區(qū)。例如,std::cout << std::endl;相當(dāng)于std::cout << '\n' << std::flush;,或者std::cout << '\n'; std::fflush(stdout);。由于流操作符operator<<的重載,對(duì)于'\n'和"\n",輸出效果相同。對(duì)于有輸出緩沖的流(例如cout、clog),如果不手動(dòng)進(jìn)行緩沖區(qū)刷新操作,將在緩沖區(qū)滿(mǎn)后自動(dòng)刷新輸出。不過(guò)對(duì)于cout來(lái)說(shuō)(相對(duì)于文件輸出流等),緩沖一般體現(xiàn)得并不明顯。但是必要情況下使用endl代替'\n'一般是個(gè)好習(xí)慣。對(duì)于無(wú)緩沖的流(例如標(biāo)準(zhǔn)錯(cuò)誤輸出流cerr),刷新是不必要的,可以直接使用'\n'。
舉報(bào)
C++亮點(diǎn)盡在其中,本課程是在C語(yǔ)言基礎(chǔ)上的一個(gè)延伸,得以升華
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢(xún)優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2015-04-03
windows 下不是 \r\n 么?
2015-04-01
"\n"表示內(nèi)容為一個(gè)回車(chē)符的字符串。std::endl是流操作子,輸出的作用和輸出"\n"類(lèi)似,但可能略有區(qū)別。
std::endl輸出一個(gè)換行符,并立即刷新緩沖區(qū)。
例如,
std::cout << std::endl;
相當(dāng)于
std::cout << '\n' << std::flush;,或者
std::cout << '\n'; std::fflush(stdout);。
由于流操作符operator<<的重載,對(duì)于'\n'和"\n",輸出效果相同。
對(duì)于有輸出緩沖的流(例如cout、clog),如果不手動(dòng)進(jìn)行緩沖區(qū)刷新操作,將在緩沖區(qū)滿(mǎn)后自動(dòng)刷新輸出。不過(guò)對(duì)于cout來(lái)說(shuō)(相對(duì)于文件輸出流等),緩沖一般體現(xiàn)得并不明顯。但是必要情況下使用endl代替'\n'一般是個(gè)好習(xí)慣。
對(duì)于無(wú)緩沖的流(例如標(biāo)準(zhǔn)錯(cuò)誤輸出流cerr),刷新是不必要的,可以直接使用'\n'。