C++中 十进制,八进制,十六进制间的相互转换输出

 

C++/C语言本身支持的三种输入是:
1. 十进制。如23,456;
2. 十六进制,以0x开头。比如0x7a。输出十六进制hex关键字格式化,如cout<<hex<<12。
3. 八进制,以0开头。比如08,9012。输出八进制用oct关键字格式化,如cout<<oct<<12。

//八进制,十进制,十六进制形式的相互转换
#include <iostream>
using namespace std;

void main()
{
for (char i='0';i<='9';i++)
{
cout<<dec<<i<<" "<<int(i)<<" "; //格式设定后要改回来,以十进制形式输出
cout<<hex<<int(i)<<" ";//以十六进制形式输出
cout<<oct<<int(i)<<" ";//以八进制形式输出
cout<<endl;
}
cout<<endl;
}
注意 红色部分一定不能少,开始不知道,没有转换为八进制之后再换回来 ,从第二行就出错了。

其它相关问题可以参考http://www.zhiwenweb.cn/Category/Learning/1228.htm

你可能感兴趣的:(C++,语言,hex)