gpt4 book ai didi

c++ - 用户的空终止输入

转载 作者:行者123 更新时间:2023-11-28 00:09:42 26 4
gpt4 key购买 nike

只是一个简单的问题。我正在寻找最有效和最清晰的方法来获取用户输入的任意长度并存储它,这样我就可以检索它并与另一个输入进行比较。我还需要用户的输入以 null 结尾。我可以写类似的东西吗

string inp;
cin >> inp;

最佳答案

A std::string将 self 管理并成长以适应提供给程序的输入。如果你有

std::string input;
std::getline(std::cin, input);

这将从用户那里获取输入,其中包含的空间可能与输入流可以容纳的空间一样大。现在你有了字符串,如果你需要将它传递给一些需要旧的空终止 c 风格字符串的函数,那么你将使用 c_str()功能。 c_str() 确实会返回一个 const char *,因此您将无法使用它修改字符串数据。

如果你真的需要一个可修改的c风格字符串,那么你可以用

char * old_style_string = new char[input.size() + 1];
std::strcpy(old_style_string, input.c_str());

关于c++ - 用户的空终止输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33785034/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com