c語言中const有什麼用途,C語言中const有什麼用途

2021-04-02 12:48:09 字數 1709 閱讀 2245

1樓:天雲一號

const修飾的資料型別是指常型別,常型別的變數或物件的值是不能被更新的。

const關鍵字的作用主要有以下幾點:

(1)可以定義const常量,具有不可變性。 例如:

const int max=100; int array[max];

(2)便於進行型別檢查,使編譯器對處理內容有更多了解,消除了一些隱患。例如: void f(const int i) 編譯器就會知道i是乙個常量,不允許修改;

(3)可以避免意義模糊的數字出現,同樣可以很方便地進行引數的調整和修改。

(4)可以保護被修飾的東西,防止意外的修改,增強程式的健壯性。 還是上面的例子,如果在函式體內修改了i,編譯器就會報錯; 例如:

void f(const int i)

(5) 為函式過載提供了乙個參考。

class a //乙個函式

void f(int i) const //上乙個函式的過載 ......

}; (6) 可以節省空間,避免不必要的記憶體分配。 例如:

#define pi 3.14159 //常量巨集

const doulbe pi=3.14159; //此時並未將pi放入rom中 ......

double i=pi; //此時為pi分配記憶體,以後不再分配!

double i=pi; //編譯期間進行巨集替換,分配記憶體

double j=pi; //沒有記憶體分配

double j=pi; //再進行巨集替換,又一次分配記憶體!

const定義常量從彙編的角度來看,只是給出了對應的記憶體位址,而不是象#define一樣給出的是立即數,所以,const定義的常量在程式執行過程中只有乙份拷貝,而#define定義的常量在記憶體中有若干個拷貝。

(7) 提高了效率。 編譯器通常不為普通const常量分配儲存空間,而是將它們儲存在符號表中,這使得它成為乙個編譯期間的常量,沒有了儲存與讀記憶體的操作,使得它的效率也很高。

2樓:匿名使用者

(1)可以定義 const 常量

3樓:千鋒教育

const是乙個c語言的關鍵字,它限定乙個變數不允許被改變。使用const在一定程度上可以提高程式的安全性和可靠性。另外,在**別人**的時候,清晰理解const所起的作用,對理解對方的程式也有一些幫助。

另外const在其他程式語言中也有出現,如c++、php5、c#.net、hc08 c。

(1)可以定義const常量,具有不可變性。

例如:const int max=100; max++會產生錯誤;

(2)便於進行型別檢查,使編譯器對處理內容有更多了解,消除了一些隱患。

例如: void f(const int i) 編譯器就會知道i是乙個常量,不允許修改;

(3)可以避免意義模糊的數字出現,同樣可以很方便地進行引數的調整和修改。 同巨集定義一樣,可以做到不變則已,一變都變!

如(1)中,如果想修改max的內容,只需要:const int max=you want;即可!

(4)可以保護被修飾的東西,防止意外的修改,增強程式的健壯性。 還是上面的例子,如果在函式體內修改了i,編譯器就會報錯;

例如: void f(const int i)

4樓:匿名使用者

const是乙個關鍵字,用它在c或c++中可以定義乙個常量,特點是這個常量不可以在程式中被修改,一但被程式意外修改編譯器就會報錯。

C語言中的指標到底有什麼用,C語言中指標的作用是什麼?

所有變數值儲存在記憶體中,而每個記憶體都有乙個位址,所謂位址就是乙個整數編號,如同門牌號碼用於定位 專業術語叫定址 乙個位址對應乙個位元組 8bit 的記憶體單元。如今的編譯器,乙個整數int型別的值占用32位bit,也就是4位元組,編譯器將第乙個位元組的編號定義為該整數的位址,由於儲存位址的變數就...

c語言中a和a有什麼不同c語言中aa和a的區別

也不算很難理解啊 說的通俗點 a 就是先把a當前的值 進行輸出或運算啥的 然後a在自增1 就是加1 a也就先把a當前的值自增1 然後在輸出或運算啥的 好比a的值是1 b a 先把a當前的值1 自增1然後運算就是賦值給b 所以b 2 a 2b a 先把a當前的值1運算 就是賦值給b 所以b 1 然後a...

c語言中cabcab是什麼意思,C語言中cabca,b是什麼意思

max 是個函式,表示取其中最大的值。比如a 3,b 4,則max a,b 4 a 4,b 3,則max a,b 4 a 3,b 3,則max a,b 3 c語言中c abc a,b 是什麼意思 這是乙個函式呼叫的語句,c等於abc函式的返回值。一般這麼寫abc是乙個函式,也就是存在 fun typ...