C 中的sstream學習

2021-06-04 19:06:12 字數 1166 閱讀 7679

接下來我們繼續看一下c++風格的串流控制,c++引入了ostringstream、istringstream、stringstream這三個類,要使用他們建立物件就必須包含sstream.h標頭檔案。

istringstream類用於執行c++風格的串流的輸入操作。 

ostringstream類用於執行c風格的串流的輸出操作。 

strstream類同時可以支援c風格的串流的輸入輸出操作。

istringstream類是從istream(輸入流類)和stringstreambase(c++字串流基類)派生而來,ostringstream是從ostream(輸出流類)和stringstreambase(c++字串流基類)派生而來,stringstream則是從iostream(輸入輸出流類)和和stringstreambase(c++字串流基類)派生而來。

他們的繼承關係如下圖所示:

istringstream是由乙個string物件構造而來,istringstream類從乙個string物件讀取字元。 

istringstream的建構函式原形如下: 

istringstream::istringstream(string str);

//站點:www.***ev-lab.com 

#include   

#include   

using

namespace std;  

intmain()   

else

}  system("pause");  

}最後再給出乙個對檔案流錯誤標記處理的例子,鞏固學習,**如下:

//站點:www.***ev-lab.com 

#include   

#include   

using

namespace std;  

intmain()   

{  ifstream myfile("c:\\1.txt",ios_base::in,0);  

if(myfile.fail())  

{  cout

<

{  char ch;  

while(myfile.get(ch))  

{  cout

{  cout

<

{  cout

**:

關於c 中的sstream類

在cpp中,程式把輸入和輸出看做字元流,輸入時,程式從輸入流中提取位元組,輸出時,程式把位元組插入到輸入流中。對於輸入輸出流既可以來自標準輸入輸出裝置,也可以來自檔案,還可以來自string物件,三者分別屬於iostream fstream sstream。對於iostream類,就是我們通常所說的...

c 標準庫sstream的用法

庫定義了三種類 istringstream ostringstream和stringstream,分別用來進行流的輸入 輸出和輸入輸出操作。另外,每個類都有乙個對應的寬字符集版本。注意,使用string物件來代替字元陣列。這樣可以避免緩衝區溢位的危險。而且,傳入引數和目標物件的型別被自動推導出來,即...

C 標頭檔案系列 sstream

這個標頭檔案主要定義了基於字串類 string類 的流的4個模版 和8個型別 basic stringbuf繼承自basic streambuf,由於它們的功能非常相似,所以它自身僅定義了少量的幾個公有函式和虛函式 虛函式不再贅述,詳見此部落格virtual函式小節 basic istringstr...