cout 標(biāo)準(zhǔn)輸出流 對應(yīng)設(shè)備為屏幕,也可以被重定向輸出到磁盤文件。經(jīng)過緩沖區(qū),緩沖區(qū)滿后或遇到endl時向顯時器輸出。
cerr 標(biāo)準(zhǔn)錯誤流 對應(yīng)設(shè)備為屏幕,不經(jīng)過緩沖區(qū),直接向屏幕輸出有關(guān)信息。 clog 標(biāo)準(zhǔn)錯誤流 對應(yīng)設(shè)備為屏幕。經(jīng)過緩沖區(qū),緩沖區(qū)滿后或遇到endl時向顯時器輸出。 ==================================================================== ●cout clog 經(jīng)過緩沖區(qū),cerr不經(jīng)過; ●輸出位置默認(rèn)都為屏幕,
重定向 cout 可執(zhí)行程序 > 1.txt 或者 可執(zhí)行程序 1> 1.txt cerr clog 可執(zhí)行程序 2> 1.txt
可執(zhí)行程序 1>1.txt 2>&1 cout cerr clog輸出到一個文件。 ==================================================================== 1.cout流
cout是console
output的縮寫。cout不是c++預(yù)定義的關(guān)鍵字,它是ostream流類的對象,在iostream中定義。
cout流在內(nèi)存中對應(yīng)開辟了一個緩沖區(qū),用來存放流的數(shù)據(jù),當(dāng)向cout流插入一個endl時,
不論緩沖區(qū)是否已滿,都立即輸出流中所有數(shù)據(jù),然后插入一個換行符。
在iostream中只對 << 和
>>運算符用于標(biāo)準(zhǔn)類型數(shù)據(jù)的輸入和輸出進行了重載。
用戶自定義的類型數(shù)據(jù)輸入和輸出需要自己定義重載。
cout 流通常是傳送到顯示器輸出,但也可以被重定向輸出到磁盤文件。
2.cerr流
cerr流是標(biāo)準(zhǔn)錯誤流,被指定與顯示器關(guān)聯(lián)。
不經(jīng)過緩沖區(qū),直接輸出給屏幕。
cout 流通常是傳送到顯示器輸出,但也可以被重定向輸出到磁盤文件。
而cerr流中的信息只能在顯示器輸出。
3.clog流對象
clog流對象也是標(biāo)準(zhǔn)錯誤流,它是console log的縮寫。它的作用和cerr相同,都是在終端顯示器上顯示出錯信息。
它們之間只有一個微小的區(qū)別:cerr是不經(jīng)過緩沖區(qū),直接向顯示器上輸出有關(guān)信息,而clog中的信息存放在緩沖區(qū)中,緩沖區(qū)滿后或遇到endl時向顯時器輸出。
|