不同进制输出

来源:互联网 发布:js的insertbefore参数 编辑:程序博客网 时间:2024/05/21 07:34
#include <bitset>#include <stdlib.h>#include <stdio.h>#include <iostream>#include <iomanip>using namespace std;int main(){    bool b = true;    std::cout << b << std::endl;              //1    std::cout << boolalpha << b << std::endl; //true     std::cout << "===================================" << std::endl;    int i = 15;    bitset<32> bit(i);    std::cout << i << std::endl;        //默认10进制    std::cout << dec << i << std::endl; //10进制    std::cout << bit << std::endl;      //cout不支持直接输出2进制 可以使用bitset或自行计算    std::cout << hex << i << std::endl; //16进制    std::cout << oct << i << std::endl; //8进制    std::cout << "===================================" << std::endl;    std::cout << i << std::endl;                //目前输出格式为8进制    std::cout << setbase(10) << i << std::endl; //将格式恢复为默认的10进制    std::cout << "===================================" << std::endl;    char s[32] = {0};    itoa(i, s, 2);    printf("%s\n", s); //没有输出2进制的格式符     printf("%o\n", i); //8进制    printf("%d\n", i); //10进制    printf("%x\n", i); //16进制    printf("%X\n", i); //16进制    system("pause");    return 0;}