本文目錄一覽:
- 1、/ddd表示什麼?
- 2、c語言 \ddd 數字越界
- 3、C語言中’\ddd’和’\xhh’分別是什麼意思?舉例說明
- 4、c語言中的轉義字符\ddd :1-3位進制數ddd對應的符號是什麼意思呢?
- 5、C語言轉義字符\ddd和\xhh什麼意思啊?
- 6、c語言問題,請高手幫一下忙,謝了! 1、\ddd有什麼意義 2、65是不是字符型常量 3、\007的十進制值怎樣計算
/ddd表示什麼?
\ddd 表示1~3位八進制數所代表的字符
廣義地講,C語言字符集中的任何一個字符均可用轉義字符來表示,ddd為八進制的ASCII代碼。如\101表示字母”A” ,\102表示字母”B”,
\134表示反斜線,\XOA表示換行等 \”後的八進制數有無前綴“0”是一樣的。
例:聲明字符常量“A”,你可以有以下的形式:
char ch=65;
char ch=’A’;
char ch=’\101′;
char ch=’\0101′;
c語言 \ddd 數字越界
0014最前面0表示很8進制,014表示表示12,大於8進制了,所以輸出是4
C語言中’\ddd’和’\xhh’分別是什麼意思?舉例說明
\ddd中,每一個d表示了一個0~7的數字,整個\ddd表示一個用八進制數表示的ASCII字符。
\xhh,每一個h表示了一個0~9或A~F或a~f的16進制字符,整個\xhh表示一個用16進制數表示的ASCII字符。
在計算機內部,數字均以二進制形式表示和存放,用戶輸入的普通十進制數字都要被計算機轉換成二進制才能在計算機內部存儲,同樣計算機的運算結果也為二進制,一般要將其轉換成十進制數再輸出給用戶閱讀,這種轉換通常由計算機自動實現。
擴展資料
二進制與八進制、十六進制數之間的相互轉換
1、二進制轉八進制
從右往左每三位一組轉換成十進制數,將所得數據組合就是對應的八進制數
例:(010 110 111)2=(267)8
2、二進制轉十六進制
從右往左每四位一組轉換成十進制數,將所得數據組合就是對應的十六進制數
例:(0101 1011)2=(5B)16
3、十六進制轉化二進制
每一位數字轉換為四位二進制數字
例:(E3)16=(1110 0011)2
c語言中的轉義字符\ddd :1-3位進制數ddd對應的符號是什麼意思呢?
\ddd中 ddd對應 1~3位八進制數。
\xhh 中 hh 對應 1-2位16進制數。
舉例說。
\101 ,101是8進制數,轉換為10進制是65,那麼\101 對應的字符就是數字65對應的字符(請參考assic表),就是A。同理 \102 對應的字符就是B.
C語言轉義字符\ddd和\xhh什麼意思啊?
反斜杠(\)開頭是叫轉義序列(Escape Sequence),
\ddd我覺得有問題,應該是\ooo才對,
因為反斜杠後直接加數字表示的是八進制(octal), 而不是十進制(decimal),
比如 char ch = ‘\101’;
等價於 char ch = 0101; (以0開頭的表示八進制)
\xhh, 裡面是x是固定的,表示十六進制(hexadecimal),h也表示十六進制
舉例,char ch = ‘\x41’; 就是用十六進制來表示,它與前面的’\101’是等價的。
可用如下代碼證明它們等價
#include stdio.h
int main()
{
printf(“%c,%c,%c,%c”, 0101, ‘\101’, ‘\x41’, ‘A’);
return 0;
}
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
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/279024.html