istream& getline (istream& is, string& str, char delim);
对于string::getline,没有参数可以通过限制字符数来防止溢出。也许cin.getline(str,length)可以弥补这个问题,但我想知道是否还有其他使用string::getline的方法。
最佳答案
std::getline()
函数没有最大长度限制的参数。 std::string
本质上是动态的,它的大小会随着附加到它而增长。 std::getline()
的最大限制是 std::string::max_size()
.
如果你想限制行的长度,你必须使用std::istream::getline()
方法代替。
关于c++ - 如何对 string::getline 进行长度限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45973659/