n和endl的不同

2021-10-01 05:35:13 字數 640 閱讀 8187

1、區別在於:

\n只代表換行的轉義字元

endl除了代表換行,還緊跟著清出緩衝槽

2、接下來我們看一下具體內容的辨析:

要明白\n和endl的區別,首先要明白乙個概念:

輸出流。

目前輸出流的型別很多,有對檔案作為目標輸出的,有對顯示屏(console間接輸出)進行輸出的。也有輸出到其他抽象結構的。

cout的意思是console-output:控制台輸出.

但是它的機制還遠沒有我們想的那麼簡單,《後面跟著寫什麼就直接輸出到螢幕什麼?不是這樣的。

就拿cout<<"hi,zw.\n"<來說,cout代表後面的內容輸出到控制台的乙個緩衝槽,而不是控制台(黑螢幕的那個).

緩衝槽在什麼情況下會把緩衝槽的內容輸出到控制台的【螢幕介面】呢?當遇到endl或者其他fflush之類的命令或函式時,緩衝槽裡的內容會按照順序輸出到控制台,再由控制台進行轉意字元的識別列印。

endl和\n的區別是:

\n在控制台裡被翻譯為【換行】

endl在控制台裡也被翻譯成【換行】

但endl還在緩衝槽這個部分有個功能:清槽,把緩衝槽裡的內容輸出到控制台。

為什麼平時幾乎沒有任何區別呢?

因為緩衝槽即使不用endl,只要遇到另一行表示式,一般也會自動清槽。

c 中endl與「 n」的區別

在c 中,終端輸出換行時,用cout endl 與 n 都可以,這是初級的認識。但二者有小小的區別,用endl時會重新整理緩衝區,使得棧中的東西重新整理一次,但用 n 不會重新整理,它只會換行,棧內資料沒有變化。但一般情況,二者的這點區別是很小的,在大的程式中可能會用到。建議用endl來換行.end...

C 中的endl和C中的 n的區別

沒錯就是這個我開始出錯的endl c 中endl是乙個被稱為操縱符 manipulator 的特殊值。使用的效果和c中的 n 表面上是一樣的。endl的效果是結束當前行,並將與裝置關聯的緩衝區 buffer 中的內容刷到裝置中。而c中 n好像沒有這個用處 只有換行作用。關於endl的好處,暫時說不出...

C 操控器endl與換行符 n 的區別

很多c 的初學者都以為endl只是 n 換行符的替代者,這是一種片面的看法,因為endl不僅僅在在輸出流中插入了 n 而且還有重新整理緩衝區的作用。輸入輸出流會把獲取到的資料先存放在緩衝區中,當計算機不忙的時候,會實時地把資料處理掉,這時候 n 和endl沒有什麼太大的區別,當計算機任務繁重的時候,...