C語言的常量和變數

2021-10-07 23:18:58 字數 1890 閱讀 5260

基本資料型別量,按照取值能否改變分為常量和變數。

一、常量

常量是程式執行過程中,其值不發生改變的量。

在程式中,常量可以不經說明直接引用。

1.常量定義方式

(1)使用 const定義:const 資料型別 常量名

const定義的是值不允許改變的常變數。

(2)巨集定義:#define 識別符號 常量值

符號常量在使用前必須先定義,定義方式為巨集定義。其中,#define是一條預處理命令,稱為巨集定義命令。一經定義,以後在程式中需要用到該常量的地方,均用識別符號代替。一般識別符號用大寫。

const定義和巨集定義比較:

(1)const用於類成員變數,一經定義不可修改。define用於全域性常量,不可用於類成員變數的定義。

(2)const可以在類中使用,而define不能。

(3)const定義的常量有資料型別,而巨集定義的常量沒有資料型別。因此編譯器可以對const常量進行型別安全檢查,但對巨集常量就只進行字元替換,沒有型別安全檢查,並且在字元替換可能會導致邊際效應。

什麼是邊際效應呢?下面舉個簡單的例子。

上面這段**輸出結果為:

這段**用define定義了乙個常量 n ,值為 5+2 ,按理說 num 的計算結果應該為3(int 取整數),但在計算的時候,num的值卻是 6,因為它先計算了 2除以2,這就是邊際效應。

而 const 不會出現這樣的錯誤。

2.常量的型別

(1)整型常量:int,long,short,unsigned int

備註:int的預設型別是有符號的

(2)實型常量:float,double

(3)字元常量:char,用單引號括起來的乙個字元

(4)字串常量:用雙引號括起來的字元

(5)符號常量

二、變數

變數代表記憶體中具有特定屬性的乙個儲存單元,它用來存放資料,這個資料就是變數的值。在程式執行期間,變數值是可以改變的。

1.定義方法

型別 變數名,變數名

例如:int a , b ;

2.變數賦初值

(1)c語言允許在定義變數時使變數初始化

(2)可以一部分初始化

(3)對多個變數賦同乙個初值

(4)未初始化的變數先申請記憶體,但儲存單元內的值是隨機數,然後再賦值;而初始化沒有生成隨機數的過程。

變數 常量 C語言的常量和變數

常量與變數 1.常量是指值不會改變的量 1 常量不能寫在賦值語句的左邊。2 常量不能進行自加 自減運算。2.變數是指在程式執行過程中其值可以發生改變的量 1 變數需占用一定數量的記憶體空間,而常量不需要。2 區域性變數若沒有宣告為靜態變數,那麼其初值是隨機的。3 不同型別的變數可以放在一起參與運算,...

C語言 C語言常量和變數

目錄 常量 定義 分類 特殊字元型常量 變數 定義 定義變數 變數的使用 變數使用注意 變數常見問題 1.常量 定義 常量表示固定的資料。分類 整型常量 如6,7,2 浮點型常量 如6.3,6.3,5.82f 注 實型常量 小數 分為單雙精度 float double 字元常量 如 7 a h 不能...

C語言 C語言常量和變數

目錄 常量 定義 分類 特殊字元型常量 變數 定義 定義變數 變數的使用 變數使用注意 變數常見問題 1.常量 定義 常量表示固定的資料。分類 整型常量 如6,7,2 浮點型常量 如6.3,6.3,5.82f 注 實型常量 小數 分為單雙精度 float double 字元常量 如 7 a h 不能...