(一) 變數
(一)、變數型別和表示方法
1.什麼是變數?一句話,變數是儲存資料的值的空間。由於數值的型別有多種,有整數、小數(浮點數)、字元等等,那麼對應的變數就有整型變數、浮點型變數、字元型變數。變數還有其他的具體分類。整型變數還可具體分為無符號型、長整型和短整型。浮點型也可分為單精度型、雙精度型和長雙精度型。此外還可以分為靜態變數、外部變數、暫存器變數和自動儲存變數。這些資料型別我們在本節和後面的章節中都會陸陸續續介紹。
那麼變數我們總要給它取個名字吧,這個名字我們叫做識別符號。
識別符號的命名有一定的規則:
(1).識別符號只能由字母、數字和下劃線三類字元組成
(2).第一個字元必須是字母(第一個字元也可以是下劃線,但被視作系統自定義的識別符號)
(3).大寫字母和小寫字母被認為是兩個不同的字元,如A和a是兩個不同的識別符號
(4).識別符號可以任意長,但只有前32位有效。有些舊的C版本對外部識別符號的限制為6位。這是由於連結程式的限制所總成的,而不是C語言本身的侷限性
(5).識別符號不能是C的關鍵字
2.從上面的規則中,有個關鍵字的概念。那麼什麼叫關鍵字呢?
從表面字意上也可以看出,關鍵字是C語言本身某些特性的一個表示,是唯一的代表某一個意思的。
下面列出ANSI標準定義的32個C語言的關鍵字,這些關鍵字在以後的學習中基本上都會用到,到時再說它們的各自用法。
auto break case char const continue default
do double else enum extern float for
goto if int long register return short
signed sizeof static struct switch typedef
union unsigned void volatile while
C語言還包括一些不能用做識別符號的擴充套件關鍵字。
asm cdecl _cs _ds _es far
huge interrupt near pascal _ss
所以在以後的學習中,在給變數命名時要避開這些關鍵字。
3. Turbo C2.0規定所有變數在使用前都必須加以說明。一條變數說明語句由資料型別和其後的一個或多個變數名組成。變數說明的形式如下:
型別 <變量表>;
這裡型別是指Turbo C2.0的有效資料型別。變量表是一個或多個識別符號名,每個識別符號之間用,分隔。
(二)、整型變數
整型變數是用來儲存整數的。
整型變數又可具體分為好幾種,最基本的整型變數是用型別說明符int宣告的符號整型,形式如下:
int Counter;
這裡int是型別說明符,Counter是變數的名字。
整型變數可以是有符號型、無符號型、長型、短型或象上面定義的普通符號整型。
整型是16位的,長整型是32位,短整型等價於整型。
以下是幾種整型變數的宣告示例:
long int Amount; /*長整型*/
long Amount; /*長整型,等價於上面*/
signed int Total; /*有符號整型*/
signed Total; /*有符號整型,等價於上面*/
unsigned int Offset; /*無符號整型*/
unsigned Offset; /*無符號整型,等價於上面*/
short int SmallAmt; /*短整型*/
short SmallAmt; /*短整型,等價於上面*/
unsigned short int Month; /*無符號短整型*/
unsigned short Month; /*無符號短整型,等價於上面*/
從上面的示例可以看出,當定義長整型、短整型、符號整型或無符號整型時,可以省略關鍵字int。
註明:
1.用signed對整型變數進行有符號指定是多餘的,因為除非用unsigned指定為無符號型,否則整型都是有符號的。
2.當一個變數有幾重特性時,宣告關鍵字的順序可以任意。以下幾種宣告是等價的:
unsigned long T1;
long unsigned T2;
unsigned long int T3;
unsigned int long T4;
long unsigned int T5;
long int unsigned T6;
int unsigned long T7;
int long unsigned T8;
(三)、浮點型別變數
顧名思義,浮點型別變數是用來儲存帶有小數的實數的。
C語言中有三種不同的浮點型別,以下是對這三種不同型別的宣告示例:
float Amount; /*單精度型*/
double BigAmount; /*雙精度型*/
long double ReallyBigAmount; /*長雙精度型*/
這裡Amount,BigAmount,ReallyBigAmount都是變數名。
浮點型都是有符號的。
(四)、字元型變數
字元型變數中所存放的字元是計算機字符集中的字元。對於PC機上執行的C系統,字元型資料用8位單位元組的ASCII碼錶示。程式用型別說明符char來宣告字元型變數:
char ch;
這條宣告語句聲明瞭一個字元型變數,識別符號為ch。當以這種形式宣告變數之後,程式可以在表示式中引用這個變數,關於語句和表示式的知識在後面將會介紹。
字元資料型別事實上是8位的整型資料型別,可以用於數值表示式中,與其他的整型資料同樣使用。在這種情況下,字元型變數可以是有符號的,也可以是無符號的。對於無符號的字元型變數可以宣告為:
unsigned char ch;
除非宣告為無符號型,否則在算術運算和比較運算中,字元型變數一般作為8位有符號整型變數處理。
還有其他的如指標型變數,void型變數,以後再介紹。