1樓:匿名使用者
static是靜態變數,在程式中的生命週期是最長的,在程式執行中一直存在。extern是外部變數內,這個變數在程式外部定容義,也是始終存在的。而auto和retister都是在程式執行到這裡時申請記憶體單元,用完後隨即就釋放了。
2樓:
砍侃看說得好啊!我也學了好長時間c了,不知道有此一說啊......
3樓:砍侃看
誰說的,我怎麼不知道
c語言中,對於儲存型別為(c)的變數,只有在使用它們時才佔用記憶體單元
4樓:匿名使用者
static是靜態變數,在程式中的生命週期是最長的,在程式執行中一直存在。extern是外部變數,這個變數在程式外部定義,也是始終存在的。而auto和retister都是在程式執行到這裡時申請記憶體單元,用完後隨即就釋放了。
在c語言中,只有在使用時才佔用記憶體單元的變數,其儲存型別是()
5樓:鐳毅
a排除法:
static是不可能的,排除c\d
b是外部的register型變數。
c語言中定義變數不賦初值是多少,為什麼C語言中定義變數的時候不能連續給多個變數賦初值
沒有加static,預設為auto 型,此時,不給初值,變數的初值是隨機的。如果加專了static不給初值,變數的屬初值是預設的 0。其實不能說不賦初值就不行,對於區域性變數,不賦初值的話,其實他裡面存的是一個隨機的值,誰也不知道他是多少,因此如果沒賦初值的情況下就使用它,程式是完全不可控的,如你的...
C語言中的全域性變數和區域性變數分別是指什麼
解答問題前,先說明一下,當全域性變數和區域性變數同名時,要看當前 所處的作用域,預設使用當前作用域內的同名區域性變數。分析你所提供的 include int a 4 全域性變數 int f int n else return t a 此外的a是指f函式作用域內的靜態區域性變數,每次f函式呼叫retu...
c語言中定義整型變數010和10有什麼區別
0開頭的是八進位制的,後面的數字不應大於等於8,0x開頭的是16進位制的,8進位制和16進位制的只能表示正數。以數字開頭的那就是10進位制的啦。010 和 10 只能是常量而不能是變數,無法被定義。c語言中,以數字0開頭,由0 7組成的數是八進位制數字。肯定是有區別的啦,自己上機除錯一下就知道了.別...