c 中常量與變數的區別,C 中常量與變數的區別

2021-03-10 15:59:55 字數 1750 閱讀 3234

1樓:匿名使用者

常量在執行過程中值不會被改變,變數在執行過程中會被改變。

常量會被分配在堆記憶體中,變數會被分配在棧上。

2樓:匿名使用者

最通俗copy的解釋可以

按數學上的常量和變數來理解,你可以不用知道內部機理。常量的值不容許改變,而變數的值可以在程式執行中可以動態改變。。。形式上變數肯定用變數的識別符號(也就是所謂的變數名)表示。

常量有常變數和真正意義上的常量。前者就是值確定後不被改變的變數,用const 作定語,後者就只一個確定的值,數值或字元值,也就是ascii值。。。。

3樓:我愛流雨飛軒

1,效bai率:常量在編譯的時

du候,可以以立即數形式zhi編譯進dao指令,比起使用使用內版存的權變數要高效。

2,約束:定義成常量,可以避免程式在執行中給它錯誤賦值,不要小看這種約束,給常量賦值的錯誤是很容易犯的,編譯器會立即告訴你不對。

3,語法:定義陣列大小等,是因為編譯時候要確定分配的空間,這時必須使用常量。

4樓:匿名使用者

變數和常

來量是用來在程式中表源示資料的。常量是指取值在程式的執行過程中始終保持不變的量,又分為文字常量(literal constant)和常變數(也稱「符號常量」)。

本節將分三小節來介紹。

變 量◆ 變數:在程式中是指可以改變值的量。

◆ 變數名:用於標識變數的識別符號。而且變數必須用識別符號進行標識。

◆ 變數的型別:變數有型別之分,如整形變數、字元變數等。

◆ 變數的說明:任何變數都必須先說明後使用。

目的:一是便於編譯程式為變數分配空間,二是便於編譯時進行語法檢查。

1、效率:常量在編譯的時候,可以以立即數形式編譯進指令,比起使用使用記憶體的變數要高效。

2、約束:定義成常量,可以避免程式在執行中給它錯誤賦值,不要小看這種約束,給常量賦值的錯誤是很容易犯的,編譯器會立即告訴你不對。

3、語法:定義陣列大小等,是因為編譯時候要確定分配的空間,這時必須使用常量。

5樓:匿名使用者

常量就是你買了房子,它只能在那個地址,不會變動的。

變數就是你買不起房子,租房子,今天租在這裡明天租在那裡,你住的地方的地址經常變動。

這個回答怎麼樣?

6樓:鍾恪

這個,我覺bai

得樓上都說的都很好,只du是zhi,有人似乎都沒搞明白dao什麼是常量,12354、『內a』、"afjk"這些是常容亮,用const修飾的是「只讀變數」 ,即使在怎麼修飾,也是變數,也不能用來宣告陣列。

c++中只有enum型別和#define巨集可以用來定義常量。

c++ 語音中的 符號常量和常值變數有什麼區別?

7樓:匿名使用者

修正下樓上的小錯誤,應該是#define pi 3.14 沒有=號;然後#define定義的常量只是做簡單的替換,用後面的常量代替前面的符號。例如#define x 3+3 ,然後你再來個i=x*x 事實上執行的結果是

i=3+3*3+3=15。與實際要得到的值不符,這點要注意一下!

8樓:匿名使用者

符號常量用#define來定義,例如#define pi=3.14;

常值變數用const來定義,例如const double pi=3.14。

與符號常量相比,常值變數有更明確的型別屬性,更經常被程式設計師使用。

C語言中,常變數與符號常量有什麼區別

符號常量與常變數的區別 符號常量不佔用記憶體空間,在預編譯時就全部由符號常量的值替換了,而常變數佔用記憶體空間,也有資料型別,但是此變數在存在期間是不能重新賦值的。1 常變數a的定義如下 const inta 5 2 符合常量pi的定義如下 define b 3.1 c語言裡符號常量和常變數有什麼區...

整型常量與變數

你知道啥叫整型吧?常量就是在程式執行中不可變的量,比如陣列長度 當然動態分配時可以改變 定義起來通常 define a 100 下面的所有a 在編譯時會被編譯成100 而且,計算機會判斷常量是否出現在等號左邊,如果出現即被判為出錯整型變數相對於常量,就是可以改變的量,在運算過程中可以被賦值 整型表示...

c語言,字元常量與字串常量有什麼區別,求詳解

首先,它們都是常量,所以不可以被改值。字元常量永遠是一個個體,也就是它只是一個字元而已。而字串常量是一個群體,就像人們說的一句話,字串常量中是由若干個字元常量構成的,當然可以沒有,不過系統會給其加一個 0 至於為什麼要加,找d.m.ritchie。就像人們說的話一樣,字元常量是單詞,而每一句話的後面...