C語言區域性變數和自動變數的區別是什麼?請簡單舉例子說明一下

2021-04-18 05:55:53 字數 1277 閱讀 3996

1樓:模仿版的人生

「常量」在程式執行時,不會被修改的量。

「變數」在指令式語言中,變數通常是可變的。

2樓:匿名使用者

舉個栗子:抄

我們定義了一bai

個方法來求圓的周長,那麼就要du用到公式c = 2πr我們將這zhi個公式看成程式那麼dao

r就是變數,每次的輸入都可能是不一樣的。

π則是常量,不管如何,π就是那個值。

常量就是在程式編譯完成以後就不會再發生改變的量。就像上面,除非現有數學體系重建,不然π永遠是3.1415926~3.1415927之間的那個資料不變

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

3樓:匿名使用者

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

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

4樓:牆角哋落寞

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

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

5樓:匿名使用者

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

6樓:匿名使用者

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

7樓:匿名使用者

舉個例bai子吧

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

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

碼字不容易啊!!!

8樓:匿名使用者

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

c51 微控制器 區域性變數 問題,C51 微控制器 區域性變數 問題

為了 整體的安全,還是初始化一下。有時會被編譯器初始化為0的,但不是總是。微控制器區域性變數定義 這個問題要回歸到區域性變數的定義,我翻下書給你看書上的定義 區域性變數也稱內部變數,是在函式內部定義。其作用越限於函式內,離開函式後在使用就屬於非法,因為記憶體已釋放。摘自 微控制器原理及應用設計 胡學...

c語言中的自動變數和暫存器變數是什莫

c語言學習之變數儲存 c語言中對變數的說明包括兩方面的內容 變數型別以及變數的儲存型別。變數型別如 int 整形 char 字元型 是用來說明變數所佔用的記憶體空間的大小。變數儲存型別用來說明變數的作用範圍。c語言的變數儲存類有 自動類 暫存器類 靜態類和外部類。關鍵字auto加在變數名及其型別前,...

C語言中static變數的賦值問題

static int a 0 執行期時初始化一次,下次再呼叫時,不進行初始化工作如下 printf d a a int main staticlocalvar 第一次呼叫,輸出a 0 staticlocalvar 第二次呼叫,記憶了第一次退出時的值,輸出a 1 return 0 擴充套件資料 1 s...