C連載9-char類型詳解

​1、char類型git

1.char類型存儲的是整數而不是字符,例如:在ASCII中,65表明A;程序員

2.標準ASCII範圍爲0-127;商用統一編碼Unicode建立一個全球字符合集;github

3.注意點:C語言把1字節定義爲char類型佔用的位數,所以在16位,32位,64位系統中都是能夠用char類型的。有敵意i但值得注意就是在Java中,char類型是佔兩個字節的,而byte類型纔會佔用一個類型;微信

4.聲明方式:學習

聲明一個字符,咱們須要使用單引號將其引用起來。不能使用雙引號大數據

咱們能夠這樣char a = 65;可是並不推薦這樣寫,由於在跨系統的時候,可能會由於編碼形式的不一樣,致使棘手的問題。ui

(1)注意點:char類型在C語言中將字符常量視爲int類型,而不是char類型編碼

  char a = 'A'; 

  char b = 'DABC'; 

  printf("%c\n",a); 

   printf("%c",b);

 

 

能夠看出,變量b能夠存儲四個字符,可是當打印的時候咱們只會打印出後面的八位,即C,不會打印前面,這種形式也用於「變位」操做。spa

5.非打印字符.net

有些字符好比:換行、空格等特殊字符沒法打印出,咱們有兩個方式進行

(1)使用ASCII碼,好比:蜂鳴字符就是7,能夠這樣寫char a = 7;

(2)使用轉義序列

轉義序列

含義

\a

警報(ANSI C)

\b

退格

\f

換頁

\n

換行

\r

回車

\t

水平製表符

\v

垂直製表符

\\

反斜槓

\'

單引號

 

轉義序列

含義

\"

雙引號

\?

問號

\0oo

八進制(oo必須是有效的八進制數字,即每一個o可表示

\xhh

十六進制(hh必須是有效的十六進制數,即每一個h可表示0~f中的一個數字)

(3)C90中添加了警報聲音,也就是\a,可是在某些系統中是不起做用的,C規定​:警報字符是不改變活躍位置的(這個活躍位置,咱們能夠理解爲光標)

(4)八進制其實能夠省略前面的0​,好比:'\007',能夠寫爲‘\07',甚至能夠寫爲'\7';

(5)整數常量的例子

類型

十六進制

八進制

十進制

char

\0x41

 \0101

N.A.

int

0x41

0101

65

unsigned int

0x41u

0101u

65u

long

0x41L

0101L

65L

unsigned long

0x41UL

0101UL

65UL

long long

0x41LL

0101LL

65LL

unsigned long long

0x41ULL

0101ULL

65ULL

(6)使用ASCII碼時,注意數字和數字字符的區別,​例如:字符4對應的ASCII碼是52,’4​‘表示字符4,不是數值4

(7) ASCII碼和轉義字符相比,推薦使用轉義字符,由於這樣可移植性強,且​易於識別。

(8) 若是要使用ASCII碼,爲什麼要寫成\032,而不是032,首先’\032'可以更加清晰的表達程序員​使用字符編碼的意圖,而且這樣寫是能夠嵌套到字符串中去的,好比:printf("Hello!\007\n")​

3、源碼:

D9_1_TypeOfchar.c

https://github.com/ruigege66/CPrimerPlus/blob/master/D9_1_TypeOfchar.c

https://github.com/ruigege66/CPrimerPlus/blob/master/D7_toobig.c

2.CSDN:https://blog.csdn.net/weixin_44630050

3.博客園:https://www.cnblogs.com/ruigege0000/

4.歡迎關注微信公衆號:傅里葉變換,我的帳號,僅用於技術交流,後臺回覆「禮包」獲取Java大數據學習視頻禮包、

相關文章
相關標籤/搜索