2.1 注釋符号
c語言注釋有兩種:/…/和//,
其中:/…/編譯器剔除注釋代碼時會将/…/變為空格。
特别注意:/…/這種注釋不能嵌套,/總是與離它最近的/比對
2.2 連續符和轉義符
C語言裡以反斜杠\表示斷行。編譯器會将反斜杠剔除掉,跟在反斜杠後面的字元自動接續到前一行。但是注意:反斜杠之後不能有空格,反斜杠的下一行之前也不能有空格。當然你可以測試一下加了空格之後的效果。有時候bug出現在這裡,你很難找到。
反斜杠除了可以被用作接續符,還能被用作轉義字元的開始标志。
常用的轉義字元及其含義:
轉義字元 轉義字元的意義
\n 回車換行
\t 橫向跳到下一制表位置
\v 豎向跳格
\b 倒退
\r 回車
\f 走紙換頁
\\反斜扛符"\"
\' 單引号符
\a 鳴鈴
\ddd 1~3 位八進制數所代表的字元
\xhh 1~2 位十六進制數所代表的字元
廣義地講,C語言字元集中的任何一個字元均可用轉義字元來表示。
表中的\ddd 和\xhh正是為此而提出的。ddd 和 hh 分别為八進制
和十六進制的 ASCII 代碼。
如\102 表示字母"B", \134 表示反斜線,\X0A 表示換行等
2.5.1 左移和右移
左移運算符“<<”是雙目運算符。其功能把“<< ”左邊的運算數的各二進位全部左移若幹位,由“<<”右邊的數指定移動的位數,高位丢棄,低位補 0。
右移運算符“>>”是雙目運算符。其功能是把“>> ”左邊的運算數的各二進位全部右移若幹位,“>>”右邊的數指定移動的位數。但注意:對于有符号數,在右移時,符号位将随同移動。當為正數時, 最高位補 0;而為負數時,符号位為 1,最高位是補 0 或是補 1 取決于編譯系統的規定。Turbo C 和很多系統規定為補 1。
注意的問題:
0x01<<2+30;或 0x01<<2-3;
這樣的代碼時錯誤的。一個整型數長度為 32 位,左移32位發生了什麼事情,溢出
!左移-1位呢,是以左移和右移的位數是有講究的。左移和右移的位數不能大于
資料的長度,不能小于 0。