格式化输出输入

printf---# 标志字符:

使用转换说明的可选形式。若为%o格式,显示前导0;若为%x和%X格式,则显示前导0x和0X。对于所有浮点形式,#保证了即使不跟任何数字,也打印一个小数点字符。对于%g和%G格式,它防止尾随零被删除。
例:”%#o“、”%#x“、”%#8.0f“、”%+#10.3E“

对 c、s、d、u 类无影响;
对o类,在输出时加前缀0;
对x类,在输出时加前缀0x或者0X;
对g、G类,防止尾随0被删除;
对于所有的浮点形式,#保证了即使不跟任何数字,也打印一个小数点字符

C/C++中二进制是不直接支持的

要想输入二进制,可以用bitset<size_t N>进行转换输出。如下示例程序:

  • #include<bitset>  
  • #include<iostream>  
  • int main()  
  • {  
  • int c=-1;  
  •     std::bitset<sizeof(int)*8> a(c);   
  •     std::cout<<a<<"\n";  
  • return 0;  

猜你喜欢

转载自www.cnblogs.com/tianzeng/p/9113886.html