二進制、八進制、十六進制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條評論