Mega Code Archive

 
Categories / C++ Tutorial / File Stream
 

Make ostringstream work with decimal, hexadecimal value, floating value, bitset

/* The following code example is taken from the book  * "The C++ Standard Library - A Tutorial and Reference"  * by Nicolai M. Josuttis, Addison-Wesley, 1999  *  * (C) Copyright Nicolai M. Josuttis 1999.  * Permission to copy, use, modify, sell and distribute this software  * is granted provided this copyright notice appears in all copies.  * This software is provided "as is" without express or implied  * warranty, and with no claim as to its suitability for any purpose.  */ #include <iostream> #include <sstream> #include <bitset> using namespace std; int main() {     ostringstream os;     // decimal and hexadecimal value     os << "dec: " << 15 << hex << " hex: " << 15 << endl;     cout << os.str() << endl;     // append floating value and bitset     bitset<15> b(5789);     os << "float: " << 4.67 << " bitset: " << b << endl;     // overwrite with octal value     os.seekp(0);     os << "oct: " << oct << 15;     cout << os.str() << endl; } dec: 15 hex: f oct: 17 hex: f float: 4.67 bitset: 001011010011101