整型字面值(常量)是显式地书写的常量,如212 或1776。与C语言相同,C++能够以三种不同的计数方式来书写整数:基数为10、基数为8(老UNIX版本)和基数为16(硬件黑客的最爱)。
C++表示法:使用前一(两)位来标识数字常量的基数。
如果第一位为1~9,则基数为10(十进制);因此93是以10为基数的。
如果第一位是0,第二位为1~7,则基数为8(八进制);因此042的基数为8,它相当于十进制数的34。
如果前两位是0x或0X,则基数为(十六进制);因此0x42为十六进制数,相当于十进制数66。对于十六进制数,字符a~f和A~F表示了十六进制位,对应于10~15。0XF为15,0xA5为165。
#include <iostream>
using namespace std;
int main()
{
int cheat = 42;
int waist = 0x42;
int inseam = 042;
cout << "cheat = " << cheat << endl;
cout << "weist = " << waist << endl;
cout << "inseam = " << inseam << endl;
return 0;
}