#include <sstream>
#include <iomanip> // std::hex、std::setw、std::setfill
int main()
{
std::stringstream stream;
int a = 789;
stream << a;
printf("%s\n", stream.str().c_str());
stream.str(""); // 清理流,不能用stream.clear();
int b = -789;
stream << b;
printf("%s\n", stream.str().c_str());
stream.str("");
double c = 789.789;
stream << c;
printf("%s\n", stream.str().c_str());
stream.str("");
BYTE bData = 0x09;
stream << "0x" << std::hex << std::setw(2) << std::setfill('0') << static_cast<UINT>(bData);
printf("%s\n", stream.str().c_str());
stream.str("");
stream.flags(std::ios::hex | std::ios::showbase);
stream << static_cast<UINT>(bData);
printf("%s\n", stream.str().c_str());
stream.str("");
stream.flags(std::ios::hex | std::ios::showbase);
stream.width(4);
stream.fill('0');
stream << static_cast<UINT>(bData);
printf("%s\n", stream.str().c_str());
stream.str("");
system("pause");
return 0;
}
789
-789
789.789
0x09
0x9
00x9