古詩詞大全網 - 成語大全 - c語言問題,請高手幫壹下忙,謝了! 1、\ddd有什麽意義 2、65是不是字符型常量 3、\007的十進制值怎樣計算

c語言問題,請高手幫壹下忙,謝了! 1、\ddd有什麽意義 2、65是不是字符型常量 3、\007的十進制值怎樣計算

1.帶有反斜杠的字符是轉義字符,即將“\”後面的字符轉換成另外的意義。“\ddd”是代表1到3位八進制數所代表的字符,比如“\101”代表ASCII碼(八進制數)為101(十進制為65)的字符'A'。其他的同理轉換,註意,三個d都是數字,都可以為0。

補充壹下,“\xdd”代表1到2位十六進制數所代表的字符,x必須就是x,不能是字符,剩下的兩個d都是可為0的數字,如“\x41”代表ASCII碼(十六進制數)為41(十進制為65)的字符'A'。

不過要註意,“\0”或“\000”是代表ASCII碼為0的控制字符,即空操作字符。

2. 65是個數,壹般認為是十進制,若妳把它賦給壹個字符型變量,如

char a=65;

則此時字符型變量“a”就代表字符'A'(ASCII碼對應過來的)

3. 八進制轉換為十進制:如上面提到的“\101”中的八進制數101,轉換為十進制就是:

1*(8^2)+0*(8^1)+1*(8^0)=65

即“百位”數字乘以8的2次冪,加上“十位”數字乘以8的1次冪,加上“個位”數字乘以8的0次冪,便得到對應的十進制數。若還有“千位”、“萬位”則依此類推了。

妳這裏的“\007”中的八進制數007即就代表十進制的7了。註意,八進制數裏的數字只有0~7這八個數字,不能出現數字8,否則就不是八進制數了。

同理,十六進制轉換為十進制:如上面提到的“\x41”中的十六進制數41,轉換為十進制就是:

4*(16^1)+1*(16^0)=65

如遇到十六進制中獨有的A、B、C、D、E、F,轉換的時候把它們依次換成10、11、12、13、14、15就可以了,如十六進制數1C3F:

1*(16^3)+12*(16^2)+3*(16^1)+15*(16^0)=7456