std :: getline()是否会完全清空缓冲区,还是在输入缓冲区中仍留有换行符?std :: getline()完全清空缓冲区吗?
2
A
回答
4
作为the page状态:
如果找到定界符,则提取并丢弃(即,它不被存储和之后的下一个输入操作将开始)。
它应该被丢弃。
结帐this example.两句之间的换行符被适当的丢弃。
接听评论:
(1)的IStream &函数getline(istream的&是,字符串& STR,炭DELIM);
(2)的IStream &函数getline(istream的&是,字符串& STR);
提取字符从是并将其存储到STR直到 划界字符DELIM被发现(或换行字符, '\ n',对于(2))。
是的,换行符用作默认分隔符。
不,输入缓冲区不再有换行符,因为它会被简洁地丢弃。你不需要自己清理。
+0
我觉得我明白你在说什么,但是我的理解中没有含糊之处让我问这个问题:如果没有找到分隔符,那么换行符就是一个分隔符?一旦达到换行符,以前的所有内容都存储在字符串中,但是现在输入缓冲区中是否还有换行符,我需要清除缓冲区以清除它或否? –
相关问题
- 1. 清空键盘缓冲区
- 2. DataOutputStream不清空缓冲区
- 3. std :: cin:清空输入缓冲区而不会阻塞
- 4. ALSA snd_pcm_drop()未清除完整缓冲区
- 5. 从空缓冲区构造一个`std :: ostream`有效吗?
- 6. 环路问题。 Cin C++ getline清除缓冲区
- 7. C#Naudio BufferedWaveProvider缓冲区完全异常
- 8. AudioRecord - 空缓冲区
- 9. 如何清除缓冲区?
- 10. Arduino清除缓冲区
- 11. 清除bash“源缓冲区”
- 12. QtAV和清理缓冲区
- 13. 清除stdin缓冲区?
- 14. 清除输入缓冲区
- 15. 多重采样帧缓冲区只与渲染缓冲区不完全
- 16. 中断安全缓冲区
- 17. 完全清除dotnetnuke缓存
- 18. 在ncurses中清除字段缓冲区
- 19. 读取期间完全清除调制解调器模块串行缓冲区
- 20. std :: getline删除空格?
- 21. 安全(与平台无关)char缓冲区为std :: string
- 22. kmalloc中的缓冲区是否也是DMA安全缓冲区?
- 23. 线程安全缓冲区阵列
- 24. C++中getline的缓冲区大小限制
- 25. std :: fstream与多个缓冲区?
- 26. 复制缓冲区与std ::复制
- 27. std :: string内部缓冲区损坏?
- 28. AVPlayer项缓冲区为空
- 29. 空缓冲区插座
- 30. 32字节空缓冲区
试试吧。 (filll) –