C 中cout格式化輸出的相關函式與控制符

2021-08-10 09:18:19 字數 1578 閱讀 3023

ostream&  operator<<(type);
char name[10] = "hello";

char* p = name;

cout

<<"hello"

cout

<<(void*)p;//輸出p所指向的字串的位址

cout

<< *p; //輸出h字元

cout.put('w').put('t');//輸出w和t,可以拼接

cout.put(65).put(65.5);//double值65.5和int值65轉換成char值65,顯示其ascii碼為65的字元a

第乙個引數提供要顯示的字元的位址;

第二個引數指出要顯示多少個字元。

使用cout呼叫時,會讓模板呼叫char具體化,返回ostream&,即cout。

char* name = "hello";

cout.write(name,3);//將輸出hel3個字元

cout.write(name,10);//將把記憶體中hello後面的資料輸出,直到輸出10個字元

long val = 48;

cout.write(val,1);//由於計算機為小端,輸出第8位所對應的字元(ascii中48對應字元為0)

cout.write(val,2);//第二個引數為2或更大時會出現亂碼

flush(cout);//

#1cout#2cout#3

緩衝區為512位元組或其整數倍,寫滿時將自動重新整理輸出緩衝區;

程式結束時將重新整理緩衝區;

有輸入(cin)時,將重新整理緩衝區(將cin上面的cout全部輸出);

遇到flush(上面的#1和#2)時,重新整理緩衝區(由於《運算子過載,#2將被替換成#1)

遇到endl(#3)時,重新整理緩衝區,並插入乙個換行符

hex(cout);//十六進製制

cout

dec(cout);//decimal,十進位制(預設)

cout

oct(cout);//octal,八進位制

cout

int width(int i);

cout.fill('*');
cout.precision(2);
fmtflags setf(fmtflags);

fmtflags setf(fmtflags,fmtflags);

cout.setf(ios_base:

:showpoint);//列印小數點和末尾的0

ios_base:

:fmtflags old=cout.setf(ios_base:

:left.ios_base:

:adjustfield);//放棄之前對齊方式,變成左對齊。並返回之前的狀態。

cout

cout

C 中cout格式化輸出的相關函式

1.設定顯示整數時的計數系統 hex dec oct hex cout 完成這個設定後,函式以16進製制的形式列印整數,並且一直有效,直到再次設定。dec cout 完成這個設定後,函式以10進製的形式列印整數,並且一直有效,直到再次設定。oct cout 完成這個設定後,函式以8進製的形式列印整數...

cout格式化輸出 C

由於class ifstream ofstream分別為class istream ostream派生來的,所以,下面介紹的cout輸出的格式化,在檔案的輸出時使用方法相同。由於使用iostream工具來設定一些格式值不太方便,為簡化工作,c 在標頭檔案iomanip中提供了一些控制符,他們能夠提供...

cout格式化輸出

在使用setf等庫函式時使用 在使用流操縱運算元時使用 using namespace std 以下所有的setf 都有對應的unsetf 用於取消設定 所有的setiosflags 可以用resetiosflags 取消 標誌位fmtflags的命名空間可以使用ios base 或者ios int...