(转载)C++ cout 输出 16, 8 , 2进制
(转载)#include <iostream> #include <iomanip> #include <bitset> using std::bitset; using std::hex; using std::oct; using std::cout; using std::cin; using std::endl; int main() { int a=10; cout<<"Dec:"<<a<<endl; cout<<hex<<"Hex:"<<a<<endl; cout<<oct<<"Oct:"<<a<<endl; cout<<bitset<32>(a)<<endl; getchar(); return 0; } C++ 操作符 注:下面的scientific 和 fixed不能同时使用 double a=123.456789012345;对a赋初值 (1) cout<<a;输出: 123.456 (2) cout<<setprecision(9)<<a;输出: 123.456789 (3) cout<<setprecision(6);恢复默认格式(精度为6) (4) cout<< setiosflags(ios∷fixed);输出: 123.456789 (5) cout<<setiosflags(ios∷fixed)<<setprecision(8)<<a;输出: 123.45678901 (6) cout<<setiosflags(ios∷scientific)<<a;输出: 1.234568e+02 (7) cout<<setiosflags(ios∷scientific)<<setprecision(4)<<a; 输出: 1.2346e02 下面是整数输出的例子: int b=123456;对b赋初值 (1) cout<<b;输出: 123456 (2) cout<<hex<<b; 输出: 1e240 (3) cout<<setiosflags(ios∷uppercase)<<b;输出: 1E240 (4) cout<<setw(10)<<b<<′,′<<b; 输出: 123456,123456 (5) cout<<setfill(′*′)<<setw(10)<<b;输出: **** 123456 (6) cout<<setiosflags(ios∷showpos)<<b;输出: +123456
#include <iostream> #include <bitset> #include <string> using namespace std; int main(int argc, char *argv[]) { int a = 10; bitset<32> b0(a); // 输出二进制 cout << b0 << endl; // 转化string类型 bitset<32> b1(7); string str(b1.to_string()); cout << str << endl; return 0; }