C 常量與變數的區別

2021-06-21 01:46:14 字數 411 閱讀 5043

程式設計師面試或筆試,一般都會考到常量與變數的區別。

1. 常量的值不可以修改,任何嘗試修改常量的操作都會導致編譯錯誤。而變數可以通過賦值來改變。

2. 常量定義後就不可修改,所以常量在定義時就必須初始化。變數可以定義時暫時不進行初始化。常量初始化的時候必須直接賦值。

const char a = 't'; // correct

char p;

p = 'd';

const test = p; // error

3. 常量的位址不允許賦給非常量指標。

4. 常量在編譯的時候,可以以立即數形式編譯進指令,比起使用記憶體的變數執行起來效率更加高。

5. 常量本身沒有位址屬性(除字元常量等),而變數有位址屬性。所以常量只能用作右值,而變數左值右值都可以。

常量與變數的區別

通過前面一系列的學習了解了php的常量和變數,那麼你們知道php常量與變數有什麼關係和區別嗎?別急,下面就帶著大家看看php常量與變數的關係和區別 再來了解一下什麼是變數和常量 在程式執行的過程中,變數儲存的值可以隨時改變,而常量儲存的值是不可以改變的。變數用於儲存臨時資料資訊。某一變數被定義的時候...

傳常量與變數的區別

向建構函式或其他函式中傳入引數時,如果是執行時繫結,則傳常量與變數是有區別的。例如 include include include class con void say private const std string m name int main 這個的執行結果是 結果不一樣,可能是因為編譯器,...

C 的變數與常量

1 先定義再賦值 eg int a a 12 2 定義的同時,初始化 eg int a 12 eg const double pi 3.14159 eg define pi 3.1415926 1 整型常量 1 十進位制整數 如 789,456 2 八進位制整數 如 0567,026 3 十六進製制...