当前位置:首页 C++ > 正文

c++中getline函数用法

作者:野牛程序员:2023-07-24 09:47:55 C++阅读 3057

在C++中,getline()函数用于从输入流(通常是标准输入、文件或其他输入流)读取数据,直到遇到指定的分隔符。它通常用于读取整行文本。

以下是getline()函数的一般语法:

#include <iostream>
#include <string>
//...
std::istream& getline (std::istream& is, std::string& str, char delim);

参数解释:

  • is:输入流对象,例如std::cin表示标准输入。

  • strstd::string类型的引用,用于存储读取的文本行。

  • delim:可选参数,表示分隔符。默认情况下,分隔符为换行符 '\\n',表示读取整行文本。

使用示例:

#include <iostream>
#include <string>

int main() {
    std::string line;
    std::cout << "请输入一行文本: ";
    
    // 读取整行文本,直到用户输入回车键为止
    std::getline(std::cin, line);
    
    // 输出读取的文本
    std::cout << "您输入的文本是: " << line << std::endl;
    
    return 0;
}

在上面的示例中,用户输入一行文本,然后std::getline()函数读取该行文本并将其存储在line变量中,最后输出该文本。默认情况下,getline()函数会将回车键之前的所有字符读入line,并且不会包含回车键本身。

如果你想读取一行中的多个数据,例如空格分隔的多个单词,可以不使用getline()函数,而是使用std::cin直接读取输入:

#include <iostream>
#include <string>

int main() {
    std::string word1, word2;
    std::cout << "请输入两个单词,用空格分隔: ";
    
    std::cin >> word1 >> word2;
    
    std::cout << "您输入的两个单词是: " << word1 << " 和 " << word2 << std::endl;
    
    return 0;
}

在这个示例中,用户输入两个单词,用空格分隔,然后直接通过std::cin读取这两个单词,并将它们存储在word1word2变量中,最后输出这两个单词。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击