cout流在記憶體中開闢了乙個緩衝區,用來存放流中的資料,當向cout流插入乙個endl時,不論緩衝區是否已滿,都立即輸出流中的所有資料,然後插入乙個換行符,並且重新整理流(清空緩衝區)
cerr流物件是標準錯誤流。作用是向標準錯誤裝置輸出有關出錯資訊。和cout的不同:cout可以被重定向輸出到磁碟檔案中,但是cerr流中的資訊只能在顯示器輸出。cerr流中的資訊是需要使用者指定的。
clog流物件也是標準錯誤流。作用也是在終端顯示器上顯示出錯資訊。他們之間有微小的區別:cerr是不經過緩衝區直接向顯示器上輸出有關資訊,而clog中的資訊存放在緩衝區中,等待緩衝區滿或者遇到endl的時候向顯示器輸出(用起來效果差不多)。
cout << "hello" << endl;
cerr << "is a error" << endl;
clog << "clog error" << endl;
有兩種方法:
注意首先需要:
#include
dec--設定數值的基數為10
hex--設定數值的基數為16
oct--設定數值的基數為8
setfill(c)--設定填充字元c,c可以是字元常量,也可以是字元變數
setprecision(n)--設定浮點數的精度為n位,一般以十進位製小數字輸出,n代表有效數字,在以fixed(固定小數字數)和scientific(指數)形式輸出時,n為小數字數
setw(n)--設定字段寬度為n位
setiosflags(ios:fixed)--設定浮點數為固定的小數字顯示
setiosflags(ios:scientific)--設定浮點數以指數形式顯示
setiosflags(ios:left)--設定陣列左對齊
setiosflags(ios:right)--設定資料右對齊
setiosflags(ios:skipws)--忽略前導空格
setiosflags(ios:uppercase)--資料以十六進製制輸出時字母大寫
setiosflags(ios:showpos)--輸出正數時加「+」
舉例:
#include #include using namespace std;
int main(int argc, char const *ar**)
; // 右對齊和左對齊只有在設定了寬度的時候才有用
for (int i = 0; i < 10; ++i)
return 0;
}
東西其實是一樣的,不過是使用函式的形式來使用:
precision(n)設定實數的精度為n位
width(n)設定字段寬度為n位
fill(c)設定填充字元c
setf()設定輸出格式狀態
unsetf()取消已經設定的輸出格式狀態
#include using namespace std;
int main(int argc, char const *ar**)
標準輸出流
put 無格式插入乙個位元組 write 無格式插入一位元組序列 flush 重新整理輸出流 seekp 移動輸出流指標 tellp 返回輸出流中指定位置的指標值 left 輸出資料在本域寬範圍內左對齊 right 輸出資料在本域寬範圍內右對齊 dec 設定整數的基數為10 oct 設定整數的基數為...
標準輸出流
標準輸出流是流向標準輸出裝置 顯示器 的資料。ostream類定義了三個輸出流物件 cout,cerr,clog。1 cout流物件 cout不是c 的關鍵字,是ostream流類的物件,在iostream中定義。用cout 輸出標準資料型別時,系統會根據型別呼叫與之匹配的運算子過載函式。cout流...
c 標準輸入 輸出流
標準輸出流是流向標準輸出裝置 顯示器 的資料,標準輸入流是從標準輸入裝置 鍵盤 流向程式的資料。在標頭檔案iostream.h中定義了cin cout cerr clog 4個流物件,cin是輸入流,cout cerr clog是輸出流。一 四個流物件 cin 標準輸入流,其標準輸入裝置是鍵盤。co...