符號常量
在C語言中,可以用一個標識符來表示一個常量,稱之為符號常量。
符號常量在使用之前必須先定義,其一般形式為:
define 標識符 常量
其中#define 也是一條預處理命令(預處理命令都以"#"開頭),稱為宏定義命令,其功能是把該標識符定義為其后的常量值。一經定義,以后在程序中所有出現該標識符的地方均代之以該常量值。習慣上符號常量的標識符用大寫字母,變量標識符用小寫字母,以示區別。
注意:符號常量雖然有名字,但它不是變量。它的值在其作用域內是不能改變的,也不能被賦值。
使用符號常量的好處是:1、含義清楚。2、在需要改變一個常量時能做到“一改全改”。
常變量
常變量是在定義變量時,如果加上關鍵字const,則變量的值在程序運行期間不能改變,這種變量稱為常變量。如:
const int a = 3;
在定義常變量時必須同時對它初始化,此后它的值不能再改變,常變量不能出現在賦值符號的左邊。
區別:常變量與符號常量的區別:符號常量不占用內存空間,在預編譯時就全部由符號常量的值替換了,而常變量占用內存空間,只是此變量在存在期間不能重新賦值。