我对C++中的字符串有疑问
我想从用户22字符中读取并将其存储在字符串中
我试过了:
std::string name;
std::cin.getline(name,23);
它显示一个错误。
将cin.getline与string配合使用的解决方案是什么?
最佳答案
您可以使用std::getline(std::istream&, std::string&)
中的 <string>
代替。
如果您希望将字符数限制为22个字符,则可以使用std::string
,就像将其传递给任何C风格的API一样:
std::string example;
example.resize(22); // Ensure the string has 22 slots
stream.getline(&example[0], 22); // Pass a pointer to the string's first char
example.resize(stream.gcount()); // Shrink the string to the actual read size.
关于c++ - 我如何使用std::cin.getline()和字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16156545/