📅  最后修改于: 2023-12-03 15:30:53.979000             🧑  作者: Mango
在C++中,getline()是一个常用的输入函数,用于读取一行输入流(如键盘或文件)中的数据。getline()函数可以从输入流中读取指定长度的字符,或者直到遇到换行符为止。下面是函数的定义:
istream& getline (istream& is, string& str, char delim);
其中,is是输入流对象;str是读取数据的字符串对象;delim是一个可选的参数,用于指定停止读取的定界符,默认值为'\n'。
例如,下面的代码将从键盘读取一行输入,并将其存储在名为input的字符串对象中:
#include <iostream>
#include <string>
using namespace std;
int main() {
string input;
getline(cin, input);
cout << "输入的内容为:" << input << endl;
return 0;
}
如果要从文件中读取数据,可以指定输入流对象为文件流对象,例如:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main() {
string line;
ifstream myfile("example.txt");
if(myfile.is_open()) {
while(getline(myfile, line)) {
cout << line << '\n';
}
myfile.close();
}
else cout << "无法打开文件" << endl;
return 0;
}
这段代码将从名为example.txt的文件中逐行读取内容,并将每行内容打印到控制台上。
需要注意的是,在使用getline()函数时,必须先#include
getline(cin, input, '|'); // 读取键盘输入,以"|"作为定界符
总之,getline()函数是一个非常常用的输入函数,在C++编程中具有广泛的应用。