当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ std::basic_istream::getline用法及代码示例


std::basic_istream::getline用于从流中提取字符,直到行尾为止,否则提取的字符是定界字符。分隔字符是换行符,即“ \ n”。如果使用文件进行输入,如果到达文件末尾,此函数还将停止提取字符。

头文件:

#include <iostream>

用法:

basic_istream& getline (char_type* a, 
                            streamsize n )

basic_istream& getline (char_type* a, 
                            streamsize n, 
                             char_type delim);

参数:它接受以下参数:

  • N:它表示由a指向的最大字符数。
  • a:它是指向字符串以存储字符的指针。
  • stream:这是一个明确的定界字符。

返回值:它返回basic_istream对象。



下面是演示basic_istream::getline()的程序:

程序1:

// C++ program to demonstrate 
// basic_istream::getline 
  
#include <iostream> 
using namespace std; 
  
// Driver Code 
int main() 
{ 
    // Given string 
    istringstream gfg("123|aef|5h"); 
  
    // Array to store the above string 
    // after streaming 
    vector<array<char, 4> > v; 
  
    // Use function getline() to stream 
    // the given string with delimeter '|' 
    for (array<char, 4> a; 
         gfg.getline(&a[0], 4, '|');) { 
        v.push_back(a); 
    } 
  
    // Print the strings after streaming 
    for (auto& it:v) { 
        cout << &it[0] << endl; 
    } 
  
    return 0; 
}
输出:
123
aef
5h

程序2:

// C++ program to demonstrate 
// basic_istream::getline 
  
#include <iostream> 
using namespace std; 
  
// Driver Code 
int main() 
{ 
    // Given string 
    istringstream gfg("GeeksforGeeks, "
                      " A, Computer, Science, "
                      "Portal, For, Geeks"); 
  
    // Array to store the above string 
    // after streaming 
    vector<array<char, 40> > v; 
  
    // Use function getline() to stream 
    // the given string with delimeter ', ' 
    for (array<char, 40> a; 
         gfg.getline(&a[0], 40, ', ');) { 
        v.push_back(a); 
    } 
  
    // Print the strings after streaming 
    for (auto& it:v) { 
        cout << &it[0] << endl; 
    } 
  
    return 0; 
}
输出:
GeeksforGeeks
A
Computer
Science
Portal
For
Geeks

参考: http://www.cplusplus.com/reference/istream/basic_istream/getline/




相关用法


注:本文由纯净天空筛选整理自bansal_rtk_大神的英文原创作品 std::basic_istream::getline in C++ with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。