1. 程式人生 > >字元型資料(初學者)

字元型資料(初學者)

1、字元常量:字元常量是用單引號括起來的一個字元。例:‘a'

在C語言中,字元常量有以下特點:(1)字元常量只能用單引號括起來,不能用雙引號或其它括號。

(2)字元常量只能是單個字元,不能是字串。

(3)字元可以是字符集中任意字元。但數字被定義為字元型之後就不能參與數值運算。如'5'和5 是不同的。'5'是字元常量,不能參與運算。

2、字元變數:字元變數用來儲存字元變數,即單個字元。字元變數的型別說明符是char。字元變數型別定義和書寫規則都與整型變數相同。例:char a,b;

3、轉義字元:轉義字元是一種特殊的字元常量。轉義字元以反斜線“\”開頭,後跟一個或幾個字元。轉義字元具有特定的含義,不同於字元原有的意義,故稱轉義字元。例如printf函式的格式串中用到的“\”是一個轉義字元,其意義是“回車換行”。轉義字元主要用來表示那些用一般字元不便表示的控制程式碼。下表是常見的轉義字元。

4、字元資料在記憶體中的儲存形式及使用方法:每個字元變數被分配一個位元組的記憶體空間,因此只能存放一個字元。字元值是以ASCII碼的形式存放在變數的記憶體單元之中的。

例:x的十進位制ASCII碼是120,y的ASCII碼是121。對字元變數a,b賦予’x‘和’y‘的值。

a=’x';

b=‘y';

實際上a,b兩個單元分別存放120和121的二進位制程式碼。

ASCII表:

練習:小寫字母轉換為大寫字母:

程式:

#include <stdio.h>

void main()
{
char a,b;
a = 'a';
b = 'b';
a= a-32;
b= b-32;
printf("%c,%c\n%d,%d\n",a,b,a,b);
}

比較:char a=33;與int a=33;

結論:char是int的一種特殊形式。

5、字串常量:字串常量是由一對雙引號括起來的字元序列。例:”CHINA"

字串常量與字元常量的區別:(1)字元常量是由單引號括起,字串由單引號括起。

(2)字元常量只能是單個字元,字串常量則可以含一個或多個字元。

(3)可以把一個字元常量賦予一個字元變數,但不能把一個字串常量賦予一個字元變數。例:可以char a='a'不能char a="a"

(4)字元常量佔一個位元組的記憶體空間,字串常量佔的記憶體位元組數等於字串位元組數加1。增加的一個位元組存放字元“\0"(ASCII碼為0),這是字串結束的標誌。