读取长度未知的键入字符串

read type-in string with unknown length

本文关键字:字符串 未知 读取      更新时间:2023-10-16

在 C++ 中,我们如何读取用户输入的长度未知(可能包括空白和很长)的字符串?getline似乎需要知道最大长度。怎么办?

cin.getline需要知道缓冲区的大小,因为它存储到char *中。但是,您可以使用 std::getline ,它存储到string中,并且可以读取任意数量的文本。

例:

#include <string>
#include <iostream>
int main() {
    std::string line;
    std::cout << "Enter something: " << std::endl;
    std::getline(std::cin, line);
    std::cout << "You typed " << line << std::endl;
}