1 八进制整数
使用的数据表达形式是八进制,需要在常量前加上 0 进行修饰。八进制所包含的数字是 0 ~ 7之间。例如:
OctalNumber = 0520;
以下是八进制的错误写法
OctalNumber = 520; /*没有前缀0*/
OctalNumber = 0296; /*包含了非八进制数9*/
2 十六进制整数
常量前面使用 0x 作为前缀(注意: 0x 中的数字 0,而不是字母 O),表示该常量是用十六进制进行表示的。十六进制中所包含数字 0 ~ 9 以及字母 A ~ F。例如:
HexNumber1 - 0x460; /*加上前缀0x表示常量为十六进制*/
HexNumber2 = 0x3ba4;
说明:其中字母 A ~ F 可以使用大写形式,也可以使用 a ~ f 小写形式。
3 字符常量
字符常量是用单引号括起来的一个字符,例如 ‘a’ 和 ‘?’ 都是合法的字符常量。在对代码编译时,编译器会根据 ASCII 码表将字符常量转换成整型变量。字符 ‘a’ 的 ASCII 码值是 97,字符 ‘A’ 的 ASCII 码值是 65,字符 ‘?’ 的 ASCII 码值是 63。ASCII 码表中还有很多通过键盘无法输入的字符,可以使用 “\ddd” 或 “\xhh” 来引用这些字符。“\ddd” 是 1 - 3 位八进制数所代表的字符,“\xhh” 是 1 ~ 2 位十六进制数所代表的字符。例如 “\101” 表示 ASCII 码 ‘A’,“\XOA” 表示换行等。
下面代码
#include<iostream>
using namespace std;
int main(){
cout << "A" << endl; /*输出A*/
cout << "\101" << endl; /*输出A*/
cout << "\x41" << endl; /*输出A*/
return 0;
}
4 数据输入与输出
4.1 C++语言中的流
对标准输入设备和标准输出设备(键盘、显示器)的输入/输出简称标准 I/O,对在外存磁盘上文件的输入/输出简称文件 I/O,对内存中指定的字符串存储空间的输入/输出简称为串 I/O。
C++ 语言中把数据之间的传输操作称为流。C++ 中的流既可以表示数据从内存传送到某个载体或设备中,即输出流;也可以表示数据从某个载体或设备传送到内存缓冲区变量中,即输入流。
标准 I/O 流有 4 个类对象,它们分别是 cin、cout、cerr 和 clog。其中 cin 代表标准输入设备键盘,也称为 cin 流或标准输入流。cout 代表标准输出显示器,也称为 cout 流或标准输出流。当进行错误信息输出操作时使用 cerr 或 clog,用法与 cout 一致,区别在于cerr一般用来输出错误,不会在最终程序上显示;clog则是在缓冲区输出,不占用内存。
在流操作中,讲左移运算符 “<<” 成为插入运算符,将右移运算符 “>>” 成为提取运算符。
4.2 流输出格式的控制
4.2.1 cout 输出格式控制
在头文件 iomanip.h 中定义了一些控制流输出格式的函数,默认情况下整型数按十进制形式输出,也可以通过 hex 将其设为十六进制输出。流操作的控制具体函数如下所示。