dsp變量分配內(nèi)存 全局變量和靜態(tài)變量的區(qū)別?
全局變量和靜態(tài)變量的區(qū)別?局部變量與其他三個基本不同。局部變量在函數(shù)中定義,范圍是定義位置,以花括號結(jié)束。每次執(zhí)行definition語句時,系統(tǒng)都會為變量分配內(nèi)存。當作用域結(jié)束時,內(nèi)存被釋放。其他三
全局變量和靜態(tài)變量的區(qū)別?
局部變量與其他三個基本不同。
局部變量在函數(shù)中定義,范圍是定義位置,以花括號結(jié)束。每次執(zhí)行definition語句時,系統(tǒng)都會為變量分配內(nèi)存。當作用域結(jié)束時,內(nèi)存被釋放。
其他三個在系統(tǒng)運行時分配內(nèi)存,直到程序結(jié)束才會釋放。
也就是說,局部變量和其他三個變量之間最明顯的區(qū)別如下:[1]不同的生命周期
2]不同的分配時間
3]不同的分配位置。
但是,其他三個在范圍上是相同的。
全局變量,整個項目的作用域,無論在哪個文件中,只要聲明就可以使用。
一個靜態(tài)全局變量,其作用域是定義變更量的文件。
靜態(tài)局部變量的作用域與公共局部變量的作用域相同。靜態(tài)全局變量是通過在全局變量聲明之前添加static來定義的。全局變量和靜態(tài)全局變量都是靜態(tài)存儲的;在存儲上沒有區(qū)別。區(qū)別在于它們的范圍。全局變量的范圍是整個源程序。當源程序由多個源文件組成時,全局變量在每個源程序文件中都是有效的。但是,靜態(tài)全局變量的作用域如何受到限制,并且只能在定義該變量的源文件中使用?不能使用同一程序中的其他源文件!靜態(tài)全局變量只初始化一次,以防止調(diào)用其他源文件!全局變量可以用其他源文件初始化
你明白嗎?