Tôi muốn thử nghiệm với stringstream cho một bài tập, nhưng tôi hơi bối rối về cách nó hoạt động. Tôi đã tìm kiếm nhanh nhưng không thể tìm thấy bất cứ điều gì có thể trả lời câu hỏi của tôi.cách đọc chuỗi video với kích thước động?
Giả sử tôi có luồng có kích thước động, làm cách nào tôi biết khi nào nên dừng ghi vào biến?
string var = "2 ++ asdf 3 * c";
stringstream ss;
ss << var;
while(ss){
ss >> var;
cout << var << endl;
}
và đầu ra của tôi sẽ là:
2
++
asdf
3
*
c
c
Tôi không chắc chắn lý do tại sao tôi nhận được rằng thêm 'c' ở cuối, đặc biệt là kể từ khi _M_in_cur = 0x1001000d7 ""
Thực tế rằng đó là một chuỗi không thay đổi nhiều thứ gì - bạn đọc từ nó giống như bất kỳ luồng nào khác. –