6.1 字元常量 有兩種形式:一是用單引號括起來的乙個單字元,如′a′,′?′,′=′;二是″轉義字元″,即以″\″開頭的字串行。常用的轉義字元見下表。
字元形式 功 能
\n 換行
\t 橫向跳格(即跳到下乙個輸出區)
\v 豎向跳格
\b 退格
\r 回車
\f 走紙換頁
\\ 反斜槓字元″\″
\′ 單引號(撇號)字元
\″ 雙引號(″)字元
\ddd 1到3位8進製數所代表的字元,如\123,表示8進製數123
\xhh 1到2位16進製制數所代表的字元,如\x21,表示16進製制數23
在轉義字元賦給字元變數時,也需要在其二側加單引號,如:
char c=′\n′;
字串常量是用一對雙引號括起的字串行,如″abc\n″。
請區別字元變數和字串常量。′a′是字元常量,″a″是字串常量。在記憶體中,字元常量佔乙個位元組,而對字串常量,則在字串的後面加乙個″字串結束標誌″,以便系統據此判斷字串是否結束。用′\0′(即ascii**為0的字元,即″空字元″)作為字串結束的標誌。例如,′a′記憶體佔兩個位元組,即:a \0 。
6.2 字元變數
字元變數用來存放乙個字元常量,字元變數用char來定義。如:
char a,b;
a=′0′;b=′k′;
printf(″%c %c \n″,a,b);
將輸出兩個字元ok。
不能將乙個字串常量賦給乙個字元變數,如:
a=″0″;b=″k″;
是錯誤的。
給字元變數賦值可以採用如下三種方法:
(1)直接賦以字元常量,如char=′a′;
(2)賦以″轉義字元″,如:
char c=′\\′;
printf(″%c″,c);
輸出乙個字元″\″。
(3)賦以乙個字元的ascii**,如字元′a′的ascii**為97,則
char c=97;
printf(″%c″,c);
將輸出乙個字元″a″。實際上,字元資料在記憶體中是以整數形式(字元ascii**)存放的,例如,字元′a′的ascii碼為97,在記憶體位元組中的存放形式為:
01 10 00 01
在輸出時,如果指定輸出字元的格式符″%c″輸出,則輸出字元′a′(在輸出時先將ascii碼轉換為字元)。如果指定按輸出整數的格式″%d″輸出(如printf(″%d″,c)),則輸出乙個整數97。
應記住,字元資料與整型資料二者間是通用的,可以互相賦值和運算,如:
int a=′a′;
char c=97;
print(″%d\n″,c-a);
將輸出乙個整數32,因為′a′的ascii碼為65。
2023年計算機二級C語言考點解析 檔案
16.1 檔案型別指標 file型別指標 c語言中的檔案分緩衝型檔案和非緩衝型檔案兩種,此處只討論緩衝型檔案。對於緩衝型檔案,每個被使用的檔案都在記憶體中開闢乙個區,用來存放檔案的有關資訊 如檔案名字 檔案狀態及檔案當前位置等 這些資訊儲存在有關結構體型別的變數中。該結構體型別由系統定義,取名為fi...
2023年計算機二級C語言考點解析 運算
15.1 位運算的含義及應用 1.位的概念 大多數計算機系統的記憶體儲器是由眾多的儲存單元構成的。在微機中,每個儲存單元是1個位元組,它由8位二進位制數構成,可以表示28 256種資訊,各位的編號從0 7,最左邊的位 第7位 是最高位,最右邊的位 第0位 是最低位。由於二進位制本身的特點,各位上的數...
2023年計算機二級C語言考點解析 陣列
9.1 一維陣列的定義 初始化和引用 1.一維陣列的定義方式為 型別說明符 陣列名 常量表示式 1 陣列名的命名方法與變數名相同,遵循識別符號命名規則 2 陣列是用方括號括起來的常量表示式,不能用圓括號 3 常量表示式表示陣列元素的個數,即陣列的長度,陣列的下標從0開始,下標的最大值為 常量表示式 ...