為什麼只能用八進位制或者十六進位制而不能用十進位制的轉義字元來輸出呢

2021-05-24 02:07:45 字數 1177 閱讀 5673

1樓:匿名使用者

因為baic語言的只有八

進位制du

和十六進位制數字轉義符,沒有zhi 10 進位制數字轉義符dao!!·版形為』\ddd』的三位是八權進位制轉義字元;形為 』\xdd』的兩位十六進位制轉義字元。

為什麼沒有10進位制,只有8,16進位制,可能是因為8,16進位制與二進位制轉換更方便吧。

c語言,轉義字元'\101'為什麼為字元a。8進位制不是0開頭嗎??

2樓:御千破鬥

不用區復分,不用轉義字元的制是十進位制,用bai『\xhh』的就是十六進位制,du用 \加數字zhi

且數字的任意dao一位都不超過8的就是8進位制例如:『\101』『\010』『\000』是合法8進位制,如上『\080』『\12f』等就是非法的,不是八進位制。

3樓:匿名使用者

在轉義字元中,八進位制前面的0是可以省略的,即'\101'等價於'\0101'.

但是十六進位制前面的x就不可省咯。

4樓:半吊子仙

轉義字元中,規定用 \ooo表示3為八進位制(ooo代表三位八進位制的數),即\101,\102這樣形式的,回如果用列印出來答的話,就會分別被轉義為大寫的a、b。

而十六進位制的轉義字元規定為\xhh,注意這裡的十六進位制數字只有兩位,即\x表示採用16進位制,而後面兩位hh代表16進位制的數,比如\x41,\x42,轉義後也表示a、b。

如果要表示數值的話,比如10進位制數值65,用八進位制表示就是0o101,用16進製表示就是0x42,就是說從數值上來講 0o101 = 0x42 = 65,而ascii碼錶的65代表的是a,所以,你新增轉義符後,\101 和\x42都表示a

c語言中整數常量的十六進位制x字首必須寫成0x嗎,轉義字元十六進位制字首必須寫成x嗎

5樓:匿名使用者

數值型常量一定是數字開頭,0開始的是八進位制數,0x開始的是十六進位制數,是規定,轉義字元是以'\'開始的,其後跟著的要麼是八進位制數,要麼是十六進位制數,八進位制數以0開始,十六進位制數以x開始,這是約定俗成的東西了,我們不去討論其是否有更合理,更人性化的替代方案,只需這麼做即可。

6樓:匿名使用者

是的,這是必須的,而且兩者不能混用

而且字元前面轉義符\也是不能少的

1110101的十進位制八進位制十六進位制都是什麼?計算方法要詳細步驟

二進位制數1110101,轉換成十進位制過程是 從最後一位開始,只要是1的,就按照2的相應倍數進行相加1.2.4.8.16.32.64.128 就是0倍,1倍,2倍。則該數對應的十進位制數是1 4 16 32 64 117 八進位制的轉換可以由上面算出的十進位制117來除以8取所得餘數,最先出現的餘...

求八進位制怎麼轉換成十六進位制

八進位制和十六進位制的互換,個人認為藉助二進位制進行轉換最為方便,因為八進位制單位直接對應三位二進位制,而十六進位制單位對應四位二進位制。例如 567 8轉換成16進製為 101110111,再按四位劃分為1 0111 0111 即十六進位制為 177 16 而 6ea 16轉換成8進製為 1101...

二進位制八進位制十六進位制十進位制之間的轉換

二進位制的1101轉化成十進位制 1101 2 1 2 0 0 2 1 1 2 2 1 2 3 1 0 4 8 13 轉化成十進位制要從右到左用二進位制的每個數去乘以2的相應次方 不過次方要從0開始 十進位制轉二進位制 用2輾轉相除至結果為1 將餘數和最後的1從下向上倒序寫 就是結果 例如302 3...