关于stringstream使用的问题
使用c++的stringstream,问题1,一边读一边取,他的值会不会乱,答案是不会,也是按顺序 问题2,读完处于流的eof位时,在写入新数据就无法写入了,读取也会造成问题:
1 std::stringstream ss; 2 ss << "abc\r\ndd\r\naas"; 3 string line; 4 while (!ss.eof()) { 5 std::getline(ss, line); 6 ss >> line; 7 } 8 9 //ss.clear(); 10 //此时ss处于eof,无法写入导致下面的循环无法进行,需要加入clear函数 11 ss << "aa bb cc aa" << endl; 12 while (!ss.eof()) { 13 std::getline(ss, line); 14 ss >> line; 15 }
ss.clear(),然后再进行写入
浙公网安备 33010602011771号