程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C語言變量和常量

C語言變量和常量

編輯:關於C語言
 

編譯環境設置好以後,就可以正式學習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 BigAmount; /*雙精度型*/
long double ReallyBigAmount; /*長雙精度型*/
這裡Amount,BigAmount,ReallyBigAmount都是變量名。
浮點型都是有符號的。
(四)、字符型變量
字符型變量中所存放的字符是計算機字符集中的字符。對於PC機上運行的C系統,字符型數據用8位單字節的ASCII碼表示。程序用類型說明符char來聲明字符型變量:
char ch;
這條聲明語句聲明了一個字符型變量,標識符為ch。當以這種形式聲明變量之後,程序可以在表達式中引用這個變量,關於語句和表達式的知識在後面將會介紹。
字符數據類型事實上是8位的整型數據類型,可以用於數值表達式中,與其他的整型數據同樣使用。在這種情況下,字符型變量可以是有符號的,也可以是無符號的。對於無符號的字符型變量可以聲明為:
unsigned char ch;
除非聲明為無符號型,否則在算術運算和比較運算中,字符型變量一般作為8位有符號整型變量處理。
還有其他的如指針型變量,void型變量,以後再介紹。

二、常量
常量的意思就是不可改變的量,是一個常數。同變量一樣,常量也分為整型常量、浮點型常量、字符型常量,還有字符串常量、轉義字符常量和地址常量。
(一)、整型常量
整型常量可以是長整型、短整型、有符號型、無符號型。在Tubbo C 2.0裡有符號整型常量的范圍從-32768到32767,無符號整型的為0到65535;有符號長整型的范圍為-2147483648到2147483647。無符號長整型的范圍為0到4294967295。短整型同字符型。
可以指定一個整型常量為二進制、八進制或十六進制,如以下語句:
-129, 0x12fe, 0177
常量的前面有符號0x,這個符號表示該常量是十六進制表示。如果前面的符號只有一個字母0,那麼表示該常量是八進制。
有時我們在常量的後面加上符號L或者U,來表示該常量是長整型或者無符號整型:
22388L, 0x4efb2L, 40000U
後綴可以是大寫,也可以是小寫。  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved