C語言定義常量常用的方法有以下2種:
創(chuàng)新互聯(lián)建站是一家專業(yè)提供嘉禾企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、HTML5建站、小程序制作等業(yè)務(wù)。10年已為嘉禾眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。
第一種:宏定義
#define N 3 // 定義了一個(gè)常量為3的宏N,在程序中N就代表3
第二種:給變量初始化賦值
int a = 2; // 定義了一個(gè)int型變量,并賦值為2,其實(shí)這是用變量來定義常量
注:定義常量還是用宏定義的比較多。
常量有整型常量、浮點(diǎn)型常量、字符型常量及字符串常量。 ‘
字符串常量定義是指定義符號(hào)常量,用一個(gè)標(biāo)識(shí)符來代表一個(gè)常量,通過宏定義預(yù)處理指令來實(shí)現(xiàn)。常量的定義:
#define count 60
這就定義了一個(gè)常量 count 它的值是一個(gè)常量60 在整個(gè)程序中不變。主調(diào)函數(shù)中的參數(shù)是實(shí)際參數(shù),被調(diào)函數(shù)中的參數(shù)是形式參數(shù)。
比如說:如下代碼段
被調(diào)函數(shù):
int max(int a,int b)
{if(ab)
return a;
else return b;
}
主調(diào)函數(shù):
main()
{
max(a,b);
}
在北調(diào)函數(shù)max(int a,int b)中a,b是形式參數(shù)在主函數(shù)中max(a,b)中的a,b是實(shí)際參數(shù)。
擴(kuò)展資料
1、在C語言中沒有專門的字符串變量,如果想將一個(gè)字符串存放在變量中以便保存,必須使用字符數(shù)組,即用一個(gè)字符型數(shù)組來存放一個(gè)字符串,數(shù)組中每一個(gè)元素存放一個(gè)字符。
2、在程序中,字符串常量會(huì)生成一個(gè)“指向字符的常量指針”。當(dāng)一個(gè)字符串常量出現(xiàn)于一個(gè)表達(dá)式中時(shí),表達(dá)式所使用的值就是這些字符所存儲(chǔ)的地址,而不是這些字符本身。
3、可以把字符串常量賦值給一個(gè)“指向字符 的指針”,例如:char *a = "123" ; a = "abc";,后者指向這些字符所存儲(chǔ)的地址。
嚴(yán)格來說,不存在常量這個(gè)東西的,只能說某個(gè)變量擁有只讀權(quán)限。
我能想到兩種方式,
① 宏定義
利用#define來定義常量
比如很常見的:#define PI 3.1415f
這樣就定義了π的值。
② const 變量
利用const修飾一個(gè)變量,可以讓這個(gè)變量擁有只讀屬性。
const float PI = 3.14159f;
這樣也可以定義π這個(gè)常量。
define是預(yù)編譯命令,在編譯前進(jìn)行符號(hào)的替代,只是定義一個(gè)符號(hào)是另一個(gè)符號(hào)的替代者,是常量還是變量看后面定義的是什么內(nèi)容。
define a xxxxxx ,如果xxxxxx放在后面的語句中是數(shù)值或字符常量,相當(dāng)于定義的了常量,如果xxxxxx也是C的一個(gè)變量名,那a還是變量。
總之只是一個(gè)符號(hào)的簡單替換,它甚至不管對(duì)不對(duì),如define a 456 kdi9,也可以,只要符號(hào)a的地方換成456 kdi9后,還符合C語言的語法就行。不符合也要到到編譯時(shí)才能發(fā)現(xiàn)錯(cuò)誤。
在程序執(zhí)行過程中,其值不發(fā)生改變的量稱為常量。
? 整型常量:12、0、-3;
? 實(shí)型常量:4.6、-1.23;
? 字符常量:‘a(chǎn)’、‘b’。
? 標(biāo)識(shí)符:用來標(biāo)識(shí)變量名、符號(hào)常量名、函數(shù)名、數(shù)組名、類型名、文件名的有效字符序列。
? 符號(hào)常量:用標(biāo)示符代表一個(gè)常量。在C語言中,可以用一個(gè)標(biāo)識(shí)符來表示一個(gè)常量,稱之為符號(hào)常量。
符號(hào)常量在使用之前必須先定義,其一般形式為:
#define 標(biāo)識(shí)符 常量
其中#define也是一條預(yù)處理命令(預(yù)處理命令都以"#"開頭),稱為宏定義命令(在后面預(yù)處理程序中將進(jìn)一步介紹),其功能是把該標(biāo)識(shí)符定義為其后的常量值。一經(jīng)定義,以后在程序中所有出現(xiàn)該標(biāo)識(shí)符的地方均代之以該常量值。
習(xí)慣上符號(hào)常量的標(biāo)識(shí)符用大寫字母,變量標(biāo)識(shí)符用小寫字母,以示區(qū)別。
一般式實(shí)型常量???,如下:
實(shí)型也稱為浮點(diǎn)型。實(shí)型常量也稱為實(shí)數(shù)或者浮點(diǎn)數(shù)。在C語言中,實(shí)數(shù)只采用十進(jìn)制。它有二種形式:十進(jìn)制小數(shù)形式,指數(shù)形式。
1)十進(jìn)制數(shù)形式:由數(shù)碼0~ 9和小數(shù)點(diǎn)組成。
例如:0.0、25.0、5.789、0.13、5.0、300.、-267.8230
等均為合法的實(shí)數(shù)。注意,必須有小數(shù)點(diǎn)。
2)指數(shù)形式:由十進(jìn)制數(shù),加階碼標(biāo)志“e”或“E”以及階碼(只能為整數(shù),可以帶符號(hào))組成。其一般形式為:
a E n(a為十進(jìn)制數(shù),n為十進(jìn)制整數(shù))
其值為 a*10n。
如: 2.1E5 (等于2.1*105)
3.7E-2 (等于3.7*10-2)
0.5E7 (等于0.5*107)
-2.8E-2 (等于-2.8*10-2)
以下不是合法的實(shí)數(shù):
345 (無小數(shù)點(diǎn))
E7 (階碼標(biāo)志E之前無數(shù)字)
-5 (無階碼標(biāo)志)
53.-E3 (負(fù)號(hào)位置不對(duì))
2.7E (無階碼)