stream中的常用操作符

2021-08-26 08:40:40 字數 2451 閱讀 7843

在這裡介紹了 stream 流操作中常用的操縱符。其中,前面帶*表示為流的預設操縱符。

適合的stream流包括:輸入輸出流(istreamostream),檔案流(fstream),字串流(stringstream)等。

注意:不是所有的操作符都適用於所有stream。

boolalpha

將true和false輸出為字串

*noboolalpha

將true和false輸出為1,0

showbase

對整型值輸出表示進製的字首

*noshowbase

不生成表示進製的字首

showpoint

對浮點值總是顯示小數點

*noshowpoint

只有當浮點值包含小數部分時才顯示小數點

showpos

對非負數顯示+

*noshowpos

對非負數不顯示+

uppercase

數值中包含字母時,使用大寫字母

*nouppercase

數值中包含字母時,使用小寫字母 

*dec

整型值顯示為十進位制 

hex整型值顯示為十六進製制 

oct整型值顯示為八進位制 

left

在值的左側新增填充字元 

right

在值的右側新增填充字元 

internal

在符號和值之間新增填充字元 

fixed

浮點值顯示為定點十進位制

secientific

浮點值顯示為科學計數法

hexfloat

浮點值顯示為十六進製制(c++11以上)

defaultfloat

重置浮點數格式為十進位制(c++11以上)

unitbuf

每次輸出操作後都重新整理緩衝區

*nounitbufs

恢復預設的緩衝區重新整理方式 

*skipws

輸入運算子跳過空白符

noskipws

輸入運算子跳過空白符

flush

重新整理ostream緩衝區 

ends

插入空字元,然後重新整理ostream緩衝區

endl

插入換行,然後刷析ostream緩衝區 

#includeusing namespace std;

int main(){

char c;

while(cin>>c)

coutint main(){

char c;

cin>>noskipws;

while(cin>>c)

cout《對於兩段程式,我們給定同樣的輸入

a b c d

程式1輸出忽略了所有的空格和製表符:

abcd
程式2原樣輸出:

a b	c		d
#include#includeusing namespace std;

int main(){

double num=100*sqrt(2.0);

cout<<"default:\t"《輸出:

default: 141.421

scientific: 1.414214e+02

fixed decimal: 141.421356

hexfloat: 0x1.1ad7bc01366b8p+7

use default: 141.421

showpos: +141.421

default: 10

noshowpoint: 10

showpoint: 10.0000

按任意鍵繼續

#include//#include#include using namespace std;

int main(){

int i=-16;

double d=3.14159;

//補白第一列,使用輸出中最小12個位置

cout<<"i:"《輸出:

i: -16next rol

d: 3.14159next rol

i:-16 next rol

d:3.14159 next rol

i: -16next rol

d: 3.14159next rol

i:- 16next rol

d: 3.14159next rol

i:-#########16next rol

d:#####3.14159next rol

按任意鍵繼續

參考書籍:《primer c++ 第五版》第17章

ruby中的 操作符和 操作符

url str foo foo str bar foobar str foo foo str.object id 606274188 str bar foobar str.object id 606283808 str foobar foobarfoobar str.object id 606283...

Kotlin常用操作符

如果 左邊表示式非空,elvis操作符就會返回左邊的結果,否則返回右邊的結果。請注意,僅在左側為空的時候,右側的表示式才會計算 val a b?length?1 等同於 val a int if b null b.length else 1當使用 as 轉型的時候,可能會經常出現 classcast...

RxJava常用操作符

用於建立observable 被觀察者 的操作符 用於對observable發出的資料進行變換的操作符 用於從observable發射的資料中選擇性的過濾一些資料的操作符 用於將多個observable組合成乙個單一的observable的操作符 有助於從observable的錯誤通知中恢復的操作符...