15d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)//===----------------------------------------------------------------------===// 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// The LLVM Compiler Infrastructure 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 55d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// This file is dual licensed under the MIT and the University of Illinois Open 65d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Source Licenses. See LICENSE.TXT for details. 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//===----------------------------------------------------------------------===// 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// <strstream> 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// class strstream 1390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 14a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// strstreambuf* rdbuf() const; 15cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 16eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include <strstream> 17eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include <cassert> 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 19a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)int main() 20a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles){ 21cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) { 22b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) char buf[] = "123 4.5 dog"; 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const std::strstream out(buf, 0); 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) std::strstreambuf* sb = out.rdbuf(); 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(sb->sputc('a') == 'a'); 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) assert(buf == std::string("a23 4.5 dog")); 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 29cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)