您的位置:首页 > 编程语言 > C语言/C++

C++不同进制整数的使用--gyy整理

2013-10-14 08:51 246 查看
在C++的整数常量中,整数分为十进制整数、八进制整数和十六进制整数。

那给出一个整型常量怎样区分是何种进制呢?/给出一个整型常量,如100,默认是十进制数,如果在该数前加0,如0100,则此数表示为八进制数,如果在该数前加0x,如0x100,则此数表示为十六进制数。

使用cout输出一个整数时,默认按十进制进行输出,如果想让该数按八进制或十六进制进行输出,需要使用输出格式控制符。/如果使用格式控制符,要包含头文件iomanip。

十进制的输出格式控制符为dec(默认使用),八进制的格式控制为oct,十六进制的格式控制符为hex。

以下是程序示例

//不同进制整数的使用
//给出一个整型常量,如100,默认是十进制数,
//如果在该数前加0,如0100,则此数表示为八进制数
//如果在该数前加0x,如0x100,则此数表示为十六进制数
//使用cout输出一个整数时,默认按十进制进行输出,
//如果想让该数按八进制或十六进制进行输出,需要使用输出格式控制符
//如果使用格式控制符,要包含头文件iomanip
//十进制的输出格式控制符为dec,八进制的格式控制为oct,十六进制的格式控制符为hex

#include <iostream>
#include <iomanip> //包含输出格式控制头文件
using namespace std;
int main()
{
cout<<"以下整数的输出都按十进制进行"<<endl;
int a; //整型a
a=11;  //给赋一个十进制整数值
cout<<"after a=11(十进制11), a="<<a<<"(十进制)"<<endl;
a=011;  //给赋一个八进制整数值
cout<<"after a=011(八进制11), a="<<a<<"(十进制)"<<endl;
a=0x11;  //给赋一个八进制整数值
cout<<"after a=0x11(十六进制11), a="<<a<<"(十进制)"<<endl<<endl;

cout<<"以下整数的输出按输出格式控制符指定的进制进行"<<endl;
a=11;  //给赋一个十进制整数值
cout<<"after a=11(十进制11), a="<<dec<<a<<"(十进制)"<<endl;
a=011;  //给赋一个八进制整数值
cout<<"after a=011(八进制11), a="<<oct<<a<<"(八进制)"<<endl;
a=0x11;  //给赋一个八进制整数值
cout<<"after a=0x11(十六进制11), a="<<hex<<a<<"(十六进制)"<<endl;

return 0;
}


运行结果

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: