C 標準庫之iomanip

2021-08-31 11:10:04 字數 3145 閱讀 4693

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!

c++ 語言下

標頭檔案:#include

說明:是i/o流控制標頭檔案,就像c裡面的格式化輸出一樣

控   制   符                    

作           用                                     

dec 

設定整數為十進位制

hex設定整數為十六進製制

oct設定整數為八進位制

setbase(n)

設定整數為n進製(n=8,10,16)

setfill(n)

設定字元填充,c可以是字元常或字元變數

setprecision(n)

設定浮點數的有效數字為n位

setw(n)

設定字段寬度為n位

setiosflags(ios::fixed)

設定浮點數以固定的小數字數顯示

setiosflags(ios::scientific)  

設定浮點數以科學計數法表示

setiosflags(ios::left)

輸出左對齊

setiosflags(ios::right)

輸出右對齊

setiosflags(ios::skipws)

忽略前導空格

setiosflags(ios::uppercase)

在以科學計數法輸出e與十六進製制輸出x以大寫輸出,否則小寫。

setiosflags(ios::showpos)

輸出正數時顯示"+"號

setiosflags(ios::showpoint)

強制顯示小數點

resetiosflags() 

終止已經設定的輸出格式狀態,在括號中應指定內容

在此需要說一下,有效位數預設是6位,即setprecision(6),即小數點前面和小數點後面加起來的位數為6個有效數字(注意會四捨五入)。

另外,科學計數法輸出e與十六進製制輸出預設是以小寫的,要換成大寫需新增uppercase

而setw(n)設定寬度,若是實際寬度大於被設定的,則setw函式此時失效。

以下是測試程式:

[cpp]view plain

copy

print?

#include 

#include 

using

namespace std ;  

int main()    

#include #include using namespace std ;int main()  

_elem _fill;    // the fill character

};  

// template function setfill

template

inline

_fillobj<_elem> __clrcall_or_cdecl setfill(_elem _ch)  

template

class _traits> inline

basic_istream<_elem>&  

__clrcall_or_cdecl operator>>(basic_istream<_elem>& _istr,  

const _fillobj<_elem>& _manip)  

template

class _traits> inline

basic_ostream<_elem>&  

__clrcall_or_cdecl operator

const _fillobj<_elem>& _manip)  

// template struct _smanip

template

struct _smanip  

void (__cdecl *_pfun)(ios_base&, _arg); // the function pointer

_arg _manarg;   // the argument value

};  

template

class _traits,  

class _arg> inline

basic_istream<_elem>& __clrcall_or_cdecl operator>>(  

basic_istream<_elem>& _istr, const _smanip<_arg>& _manip)  

template

class _traits,  

class _arg> inline

basic_ostream<_elem>& __clrcall_or_cdecl operator<

basic_ostream<_elem>& _ostr, const _smanip<_arg>& _manip)  

// instantiations

_mrtimp2 _smanip__cdecl resetiosflags(ios_base::fmtflags);  

_mrtimp2 _smanip__cdecl setiosflags(ios_base::fmtflags);  

_mrtimp2 _smanip __cdecl setbase(int);  

_mrtimp2 _smanip__cdecl setprecision(streamsize);  

_mrtimp2 _smanip__cdecl setw(streamsize);  

_std_end  

#ifdef _msc_ver

#pragma warning(pop)

#pragma pack(pop)

#endif  /* _msc_ver */

#endif /* rc_invoked */

#endif /* _iomanip_ */

/** consult your license regarding permissions and restrictions.

v5.02:0009 */

給我老師的人工智慧教程打call!

C 標準庫之iomanip

c 語言下 標頭檔案 include 說明 是i o流控制標頭檔案,就像c裡面的格式化輸出一樣 控 制 符 作 用 dec 設定整數為十進位制 hex設定整數為十六進製制 oct設定整數為八進位制 setbase n 設定整數為n進製 n 8,10,16 setfill n 設定字元填充,c可以是字...

C 標準庫之

iomanip在c 程式裡面經常見到下面的標頭檔案 include io代表輸入輸出,manip是manipulator 操縱器 的縮寫 在c 上只能通過輸入縮寫才有效。dec 設定整數為十進位制 hex 設定整數為十六進製制 oct 設定整數為八進位制 setbase n 設定整數為n進製 n 8...

C 標準庫之cctype

c 語言下 標頭檔案 include 說明 字元處理庫 功能一 字元測試 1 函式原型均為int is x int 2 引數為int,任何實參均被提公升成整型 3 只能正確處理處於 0,127 之間的值 功能二 字元對映 1 函式原型為int to x int 2 對引數進行檢測,若符合範圍則轉換,...