C++中如何实现多行stdin输入

1949idc 2年前 (2024-09-19) 阅读数 286 #编程语言

在 C++ 中,您可以使用 std::getline() 函数从标准输入(通常是键盘)读取多行

#include<iostream>
#include<string>
#include<vector>

int main() {
    std::string line;
    std::vector<std::string> lines;

    std::cout << "请输入多行文本,按 Ctrl+D (或 Ctrl+Z 在 Windows 上) 结束输入。"<< std::endl;

    // 读取多行输入,直到遇到 EOF(文件结束符)
    while (std::getline(std::cin, line)) {
        lines.push_back(line);
    }

    std::cout << "您输入的内容如下:"<< std::endl;
    for (const auto& l : lines) {
        std::cout << l << std::endl;
    }

    return 0;
}

这个程序首先包含了必要的头文件,然后定义了一个 std::string 变量 line 和一个 std::vector<std::string> 变量 lines 来存储输入的多行字符串。

程序会提示用户输入多行文本,并在每次按下回车键时读取一行。当用户按下 Ctrl+D(或在 Windows 上按下 Ctrl+Z)时,std::getline() 将返回 false,循环结束。

最后,程序会遍历 lines 向量并打印出所有输入的行。

版权声明

本文内容由互联网用户自发贡献,该文观点仅代表作者本人
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

© 2010 首途云安 & 厦门硕顿信息技术有限公司 & 闽ICP备11016866号  增值电信业务经营许可证:B1-20203020 地址:福建厦门思明区嘉禾路297号1806
高新技术企业
软件产品证书
计算机软件著作权
ISO认证
国家3A企业