二进制、八进制、十六进制4
6.2.3八进制数的表示方法
C、C++语言,如何表示一个八进制数?如果这个数是876,我们可以断定它不是八进制数,因为八进制数不可能产生7个以上的阿拉伯数字。但是如果这个数是123,567,或者12345670,那么无论是八进制数还是十进制数都是有可能的。
所以C,C++规定,一个数要想表示用八进制,必须在前面加一个0,比如123是十进制,但是0123就是八进制。这是C和C++中八进制数的表达式。
由于C和C++都没有提供二进制数的表示方法,所以我们这里学习的八进制是CtC++语言中数值表示的第二种十进制方法。
现在,对于同一个数,比如说100,我们可以在代码中用通常的十进制来表示,比如变量初始化的时候:
int a = 100
我们也可以这样写:
int a = 0144//0144是八进制100;我们将在后面学习如何将十进制数转换成八进制数。
记住,用八进制表示,不能漏掉第一个0。否则,所有计算机将被视为十进制。但是,有一个地方在使用八进制数时不能加0,那就是我们前面学过的“转义符”表达式。
6.2.4在转义字符中使用八进制数字
我们已经学习了如何使用转义字符“\”加上一个特殊的字母来表示一个字符,例如:“\n”表示换行符,“\t”表示制表符,“\”表示单引号。今天,我们学习了转义符的另一种用法:转义符' \ '后面跟一个八进制数,用来表示ASCII码等于这个值的字符。
例如,在第5章中查找ASCII代码表,我们发现问号字符(?)的ASCII值是63,那么我们可以把它转换成八进制值:77,然后用' '来表示'?。因为是八进制,所以应该写成' 7 ',但是因为C,C++规定不允许用斜杠加十进制数来表示字符,所以这里的0可以省略。
事实上,我们在实际编程中很少需要用转义字符加八进制数来表示一个字符。因此,你只需要知道6.2.4节的内容。
0条评论