endl

C++標準庫中的操控器

endl是C++標準庫中的操控器(Manipulator),包含於命名空間(namespace):std,其主要搭配iostream對象來使用,如cout、cerr等等。

基本介紹


endl英語意思是end of line,即一行輸出結束,然後輸出下一行。
endl與cout搭配使用,意思是輸出結束。
按C++標準程序庫中的描述其實現如下:
可見endl只是一個函數模板。

作用


1.將換行符寫入輸出流,並將與設備關聯的緩衝區的內容刷到設備中,保證目前為止程序所暫存的所有輸出都真正寫入輸出流。其中Unix/Linux換行符是\n,Windows中是\r\n,MAC中是\r;
2.清空輸出緩衝區。

示例


例一

在語句:
中,endl就相當於輸出的時候回車。
第一句的輸出是:
第二句的輸出是:
然後游標到了第二行。

例二

額外的,還可以這樣使用endl:
(註:這是由於Koenig looup法則)
其中第一句等同於:
第二句等於: