1 //===----------------------------------------------------------------------===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is dual licensed under the MIT and the University of Illinois Open 6 // Source Licenses. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 // <strstream> 11 12 // class strstream 13 14 // strstream(); 15 16 #include <strstream> 17 #include <cassert> 18 main()19int main() 20 { 21 std::strstream inout; 22 int i = 123; 23 double d = 4.5; 24 std::string s("dog"); 25 inout << i << ' ' << d << ' ' << s << std::ends; 26 assert(inout.str() == std::string("123 4.5 dog")); 27 i = 0; 28 d = 0; 29 s = ""; 30 inout >> i >> d >> s; 31 assert(i == 123); 32 assert(d == 4.5); 33 assert(strcmp(s.c_str(), "dog") == 0); 34 inout.freeze(false); 35 } 36