當前位置:編程學習大全網 - 源碼下載 - C++中,getline函數的詳解

C++中,getline函數的詳解

C++中本質上有兩種getline函數,壹種在頭文件<istream>中,是istream類的成員函數。壹種在頭文件<string>中,是普通函數。

壹、在<istream>中的getline函數有兩種重載形式:

istream& getline (char* s, streamsize n );

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

作用是從istream中讀取至多n個字符保存在s對應的數組中。即使還沒讀夠n個字符,如果遇到換行符'\n'(第壹種形式)或delim(第二種形式),則讀取終止,'\n'或delim都不會被保存進s對應的數組中。

二、在<string>中的getline函數有四種重載形式:

istream& getline (istream& ?is, string& str, char delim);istream& getline (istream&& is,?

string& str, char delim);istream& getline (istream& ?is, string& str);

istream& getline (istream&& is, string& str);

用法和上壹種類似,不過要讀取的istream是作為參數is傳進函數的。讀取的字符串保存在string類型的str中。

擴展資料:

getline不是C庫函數,而是gcc的擴展定義或者C++庫函數。它會生成壹個包含壹串從輸入流讀入的字符的字符串,直到以下情況發生會導致生成的此字符串結束。

1)到文件結束,

2)遇到函數的定界符,

3)輸入達到最大限度。

參考資料:

getline函數-百度百科

  • 上一篇:網站後臺HTTP 500 內部服務器錯誤(急)
  • 下一篇:如何確定關鍵績效指標
  • copyright 2024編程學習大全網