std::istream::get


get()含有三種重載模式

單字符:

single character:  int get();(如果到文件尾就返回EOF)

        istream& get(char & c);

從流中讀取一個字符,結果保存在引用c中,如果到文件尾就返回空字符。

如file.get(x);表示從文件中讀取一個字符,並把讀取的字符保存在x中。

c字符串:

c-string:   istream& get(char* s,streamsize n);    

     istream& get(char* s,streamsize n,char delim);

從流中提取字符,並將其作為c字符串存儲在s中,直到讀入了n個字符或者遇到定界字符位置,定界符為‘\n’或delim。

如ifstream &get(char *buf,int num,char delim='\n');把字符讀入由buf指向的數組,直到讀入了num個字符或遇到了delim指定的字符,如果沒使用delim這個參數,將使用缺省值換行符'\n'。

流緩沖:

stream buffer:  istream& get(streambuf& sb);

        istream& get(streambuf& sb,char delim);

從流中提取字符,並將其插入到由流緩沖區對象sb控制的輸出序列中,一旦插入失敗或輸入序列中遇到定界符('\n'或delim),則停止。從流中僅提取成功插入到sb的字符,定界符不會在sb插入的字符里,會將它從輸入序列里提取並將其保留為下一個要從流中提取的字符。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM