小熊猫C++ getline()
时间: 2023-08-08 13:10:12 浏览: 80
C++的`getline()`函数是一个字符串处理函数,用于从输入流中读取一行数据,并将其存储到一个字符串变量中。`getline()`函数的声明如下:
```c++
istream& getline (istream& is, string& str, char delim);
```
其中,`is`是一个输入流对象,如`cin`或`ifstream`;`str`是一个字符串变量,用于存储读取到的数据;`delim`是一个可选参数,用于指定分隔符,默认为'\n'。
`getline()`函数的工作原理是:从输入流中读取字符,直到遇到分隔符或者输入流结束符(如EOF、CTRL+Z等),然后将读取到的字符存储到字符串变量中。如果读取到的字符数达到了字符串的最大长度,或者输入流已经结束,`getline()`函数会自动停止读取,并将读取到的字符存储到字符串变量中。
下面是一个使用`getline()`函数从文件中读取一行数据的示例:
```c++
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
ifstream infile("data.txt");
string line;
while (getline(infile, line))
{
cout << line << endl;
}
infile.close();
return 0;
}
```
在上面的示例中,我们首先打开了一个名为"data.txt"的文件,并使用`getline()`函数从文件中逐行读取数据。当读取到文件末尾时,`getline()`函数返回false,循环结束。最后,我们关闭了文件流并返回0。
阅读全文