對於基本數據類型量,按其取值是否可改變又分為常量和變量兩種。
在程序執行過程中,其值不發生改變的量稱為常量,其值可變的量稱為變量。它們可與數據類型結合起來分類。例如,可分為整型常量、整型變量、浮點常量、浮點變量、字符常量、字符變量、枚舉常量、枚舉變量。
在程序中,常量是可以不經說明而直接引用的,而變量則必須先定義後使用。
常量和符號常量
在程序執行過程中,其值不發生改變的量稱為常量。常量分類:
常量 |
說明 |
直接常量(字面常量)
- 整型常量:12、0、-3;
- 實型常量:4.6、-1.23;
- 字符常量:‘a’、‘b’。
標識符
用來標識變量名、符號常量名、函數名、數組名、類型名、文件名的有效字符序列。
符號常量
用標示符代表一個常量。在C語言中,可以用一個標識符來表示一個常量,稱之為符號常量。
說明:符號常量在使用之前必須先定義,其一般形式為:
#define 標識符 常量
其中#define也是一條預處理命令(預處理命令都以"#"開頭),稱為宏定義命令(在後面預處理程序中將進一步介紹),其功能是把該標識符定義為其後的常量值。一經定義,以後在程序中所有出現該標識符的地方均代之以該常量值。
習慣上符號常量的標識符用大寫字母,變量標識符用小寫字母,以示區別。
【例3-1】符號常量的使用。
#define PRICE 30
main(){
int num,total;
num=10;
total=num* PRICE;
printf("total=%d",total);
}
幾點說明:
- 用標識符代表一個常量,稱為符號常量。
- 符號常量與變量不同,它的值在其作用域內不能改變,也不能再被賦值。
- 使用符號常量的好處是:含義清楚;能做到“一改全改”。
變量
其值可以改變的量稱為變量。一個變量應該有一個名字,在內存中占據一定的存儲單元。變量定義必須放在變量使用之前。一般放在函數體的開頭部分。要區分變量名和變量值是兩個不同的概念。
變量定義舉例:
int num,total;
double price = 123.123;
char a = 'a', abc;