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#include <string> 19 20int main() 21{ 22 std::strstream inout; 23 int i = 123; 24 double d = 4.5; 25 std::string s("dog"); 26 inout << i << ' ' << d << ' ' << s << std::ends; 27 assert(inout.str() == std::string("123 4.5 dog")); 28 i = 0; 29 d = 0; 30 s = ""; 31 inout >> i >> d >> s; 32 assert(i == 123); 33 assert(d == 4.5); 34 assert(strcmp(s.c_str(), "dog") == 0); 35 inout.freeze(false); 36} 37