在默认情况下,cout以十进制格式显示整数,而不管这些整数在程序中是如何书写的。如下面的程序所示:
#include<iostream> using namespace std; #include<climits> int main() { int chest = 42; //十进制 int waist = 0x42; //十六进制 int inseam = 042; //八进制 cout << "默认情况下,cout 以十进制格式显示整数" << endl; cout << "chest = " << chest << " (42以十进制格式显示)" << endl; cout << "waist = " << waist << " (0x42以十进制格式显示)" << endl; cout << "inseam = " << inseam << " (042以十进制格式显示)" << endl; cin.get(); return 0; }
程序运行结果:
默认情况下,cout 以十进制格式显示整数
chest = 42 (42以十进制格式显示)
waist = 66 (0x42以十进制格式显示)
inseam = 34 (042以十进制格式显示)
2. 如果要以十六进制或者八进制的格式显示数字,则可使用cout的一些特殊性质。在iostream中,它不仅提供了控制符endl,而且还提供了控制符dec,hex和oct,分别用于指示十进制,十六进制和八进制显示整数。如下程序所示:
#include<iostream> using namespace std; #include<climits> int main() { int chest = 42; int waist = 42; int inseam = 42; cout << "chest = " << chest << " (42以十进制格式显示)" << endl; cout << hex; cout << "waist = " << waist << " (0x42以十六进制格式显示)" << endl; cout << oct; cout << "inseam = " << inseam << " (042以八进制格式显示)" << endl; cin.get(); return 0; }
运行结果:
chest = 42 (42以十进制格式显示)
waist = 2a (0x42以十六进制格式显示)
inseam = 52 (042以八进制格式显示)