C語言宣告變數和定義變數各是什麼?有什麼區別呢? 謝謝

2021-05-15 15:25:05 字數 1326 閱讀 9322

1樓:匿名使用者

宣告變數只是告訴編譯器, 這個識別符號, 這個符號是個變數. 屬於編譯期概念.

定義變數是執行時有分配記憶體空間的. 是在執行時的概念

2樓:牆角哋落寞

定義是需要建立儲存空間的。例如:int a 在宣告的時候就已經建立了儲存空間。

宣告是不需要建立儲存空間的。 例如:extern int a 其中變數a是在別的檔案中定義的

3樓:匿名使用者

定義變數需要為變數分配記憶體空間,而宣告變數不需要,只是說明這個變數在其他函式模組定義過。如定義一個全域性變數int a;在其他函式模組需要使用這個變數a,那麼你就需要宣告一下:extern int a

4樓:匿名使用者

簡單地說宣告就是告訴計算機的編譯系統你要用到這個變數,,,定義是變數的屬性例如是int 還是flote

5樓:匿名使用者

舉個例bai子吧

,北京市du和上海市(兩個c檔案),zhi北京有個張三(dao定義),上海沒有回

,但是上海答有個(工作)要用到北京的張三,於是用(extern張三)宣告一下 ,就是告訴上海 有個叫張三的,在哪兒不知道。接下來要編譯了 ,上海編譯時用到張三的那部分就空著了(生成.o檔案),編譯好了接下來連結了,連結器滿天下找張三,於是找到了 並把他連結在一起 生成hex檔案。

碼字不容易啊!!!

6樓:匿名使用者

宣告變數是指輸入一個變數,例如int n,是告訴機器你輸了一個變數,變數是多少,要看你給它定義是多少,例如n=1,將n定義為1,這就是定義變數

c語言定義變數如:int const a;與const int a;有什麼區別?

7樓:匿名使用者

baiint const *a 和const int *a 沒有區別,都是du

一個zhi指向一個int常量的指標,這個指標本身dao以後可以重賦值指向別的int常量。

而 int *const a; 表示a是一個指標常量,初始化的時候必須固定指向一個int變數,之後就不能再指向別的地方了。

#include

int main()

8樓:匿名使用者

在定義變來量的時候是沒有說明區自別的;例bai如:const int a; int const a;但是定義此類變數時du,一般zhi

放在前面!

const int *a和dao int * const a這個區別就很多了,第一個是保證指標所指的資料不能被修改,第二個是指標不能被修改

c語言宣告變數的問題

你好,在c語言裡面函式都應該先宣告再定義,函式在使用之前是要宣告的,但是如果在使用之前就已經定義了,那麼函式可以直接使用而不要定義。舉例如下 先宣告後定義 int max int a,int b 宣告int main void int max int a,int b 定義直接使用 定義在使用前 in...

C語言中變數宣告的問題

有可能是你定義的變數系統已經使用了,你把total換成mytotal試試 character 2001 2001 這個二維陣列定義的太大了 我也執行了,換成character 200 2001 就不出錯了 所以可能c語言不能開這麼大的陣列,要是非要這麼大的話可以這樣 include include ...

C語言中怎樣定義常量變數,C語言中是如何定義常量的啊

常量的定義用const關鍵字 const 型別名 常量名 值 變數的定義是 型別名 變數名 c語言中是如何定義常量的啊 我們在用c程式設計時有時需要定義不變的變數,即常量,有兩種方法。例如 定義常量pi的兩種方式 1.define pi 3.1415926f 2.const float pi 3.1...