GetLine

GetLine

編程代碼中的全局函數
istream& getline ( istream &is , string &str , char delim );istream& getline ( istream& , string& );is 進行讀入操作的輸入流str 存儲讀入的内容delim 終結符
    中文名:GetLine 外文名: 别名:istream & getline 本質:全局函數 返回值:與參數is是一樣的 領域:編程 退出循環:ctrl+Z 特點:生成數字

簡述

返回值

與參數is是一樣的

功能

将輸入流is中讀到的字符存入str中,直到遇到終結符delim才結束。對于第一個函數delim是可以由用戶自己定義的終結符;對于第二個函數delim默認為 'n'(換行符)。

函數在輸入流is中遇到文件結束符(EOF)或者在讀入字符的過程中遇到錯誤都會結束。

在遇到終結符delim後,delim會被丢棄,不存入str中。在下次讀入操作時,将在delim的下個字符開始讀入。

舉例:

輸入為:aa#b

輸出為:aa b

再舉例:

操作1:

這裡輸入流實際上隻讀入了Nice to meet you!,#後面的Hello!并沒有存放到line中(仍停留在輸入緩沖區裡)。

而且這裡把終止符設為#,你輸入的時候就算輸入幾個回車換行也沒關系,輸入流照樣會讀入,譬如:

操作2:

這裡,輸入中的換行照樣被讀入到輸入流中并且輸出了。

(“再舉例”部分的源代碼在visual studio 中編譯通過,操作1、2也是在該環境下進行的。)

注意

這個getline是個全局函數,而不是istream/iostream的成員函數getline。

getline操作返回的是is(輸入流),在使用while(getline(cin,line))的時候若想退出循環應使用EOF或ctrl+Z。

成員函數

getline也可以作為成員函數使用

cin.getline(char* cha,int num,char f);

向cha中輸入num個字符,輸入過程中達到num個數或者提前遇到f字符,輸入結束。

相關詞條

相關搜索

其它詞條