目錄
10年積累的成都網(wǎng)站建設(shè)、成都網(wǎng)站制作經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有彭水苗族土家族免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。一、什么是常量
二、常量可以分為幾類
字面常量:
const修飾的常變量:
#define定義的標(biāo)識符常量
枚舉常量
? 在生活中,我們常用的量分為兩種,一個是變量,一個是常量;
? 變量即為可變的量
? 同理,常量即為不可變化的量;在數(shù)學(xué)中,常量是一個反應(yīng)一個實物相對靜止?fàn)顟B(tài)的量;
在c語言中也是如此,常量在整個程序的運行過程中不可被改變。
? 在程序中恒定不變的量即為常量。
二、常量可以分為幾類字面常量:? 字面常量
? const修飾的常變量
? #define定義的標(biāo)志符常量
? 枚舉常量
??字面常量就是它字面上就是一個具體的數(shù)據(jù)值。
? 字面常量也有分為整型字面常量、浮點型常量、字符型常量等等。
int main()
{
100;
'w';
3.14159;
6;
return 0 ;
}
? 該代碼中 100 ,6 為整型字面常量;'w' 為字符型字面常量 ;3.14159 為浮點型字面常量;
int main()
{
int i = 100; //此處i為變量
i = 20; //i可以重新賦值
//------------------------------
const int a =100;//此時a被const修飾,具有常屬性
a = 20; //a具有常屬性,不能被改變
//所以在運行下面的代碼時程序會報錯
return 0;
}
? 在下面的代碼中,a為變量,但是在const修飾之后,具有常屬性;所以a不能被重新賦值,即a不能被改變,稱為const修飾的常變量;
?——? 但是為什么是常變量而不是常量呢??
int main()
{
const int pu = 0;
int arr[pu] = {};
return 0 ;
}
帶著疑惑我們來看,當(dāng)運行這段代碼時,程序會報錯;
在不支持C99的編譯器中,數(shù)組只能使用常量,且不能使用變量;
(在支持C99的編譯器引入了“變長數(shù)組”的概念,即變長數(shù)組的大小是可以使用變量來指定的,但是數(shù)據(jù)不能初始化)。
從這里就可以得知,pu被const修飾之后仍是變量,只是具有了常屬性,
故稱為“const修飾的常變量”。
在c語言中,可以用#define來定義一個標(biāo)識符用來表示一個常量。
#define MA_X 1000 //定義整型常量MA_X,且數(shù)值為1000
int main()
{
#define SUG_EST "often" //同理,SUG_EST也為常量,值為"often"
#define PI 3.14159 //......
return 0 ;
}
在上列代碼中,MA_X ,SUG_EST,PI都為一個標(biāo)識符,用來表示一個常量。
凡是以#開頭的,都被稱為預(yù)處理指令,也被稱為預(yù)編譯;預(yù)編譯與編譯不同,預(yù)編譯是編譯前的處理。
#define定義的標(biāo)識符常量后不加 ' ; '??
? 在中文意思中,枚舉的意思為一一列舉;
在C語言中也是一樣,枚舉常量即為一一列舉的常量。在生活中有許多有意義的數(shù)據(jù),例如一個人的性別,有男,有女,或者保密;一周有七天,周一、周二......周日等等。
而我們要在c語言中表示這些特殊意義的數(shù)據(jù)的時候,就可以用到枚舉常量(ENUM)。
enum Sex
{
MALE,
FEMALE, //每個數(shù)據(jù)中間應(yīng)用,隔開
SECRET
}; //此處的分號不可缺少
在這里我們涉及到一個新的關(guān)鍵詞,叫做 enum -- 枚舉數(shù)據(jù)類型。
在上段代碼中 “Sex” 即為所定義枚舉類型的名字
MALE , FEMALE , SECRET即為這個枚舉類型的未來可能取值。
當(dāng)以整型類型打印這個枚舉常量的時候,打印出來的數(shù)據(jù)為0,1,2;
枚舉常量的初始默認(rèn)值從0開始。
同時,也可以給枚舉常量賦初始默認(rèn)值。
再給枚舉常量賦初始默認(rèn)值后,該枚舉常量的默認(rèn)值會從所賦的值開始算。
枚舉常量為常量,所以也可以將它的值賦給一個變量。
enum Sex
{
MALE = 5,
FEMALE,
SERCRT
}
int main()
{
enum Sex sex = MALE; //sex即為創(chuàng)建的變量
return 0 ;
}
該處若是打印sex,打印結(jié)果為5;
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧