糯米文學吧

位置:首頁 > 計算機 > C語言

C語言變量的複習提綱

C語言1.36W

C語言變量的複習提綱

(一)、變量類型和表示方法

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 BigAm