全局變量是在所有函數體的外部定義的,程序的所有部分(甚至其他文件中的代碼)都可以使用.全局變量不受作用哉的影響,總是可用的(也就是說,全局變量的生命期一直到程序的結束)
局部變量出現在一個作用域內,它們是局限於一個函數的.局部變量經常被稱為自動變量,因為它們在進入作用域時自動生成,離開作用域時自動消失.
靜態變量是指那些本不應該在程序整個生命期里存在的變量可以在程序的整個生命期里存在的變量(如局部變量),要達到這樣的效果,只要在這樣的變量前加上static就可以了,static變量的是在函數范圍之外他是不可用的,所以它不可能被輕易地改變,這會使錯誤局部化,static的另一個意思是:在某個作用域外不可訪問.當使用static於函數名和所有函數外部的變量時,它的意思是"在文件的外部不可以使用這個名字",函數名或變量是局部於文件的.
外部變量是指在文件a中定義了一個全局變量,在文件b中聲明並使用這個全局變量時,這個全局變量對於b來說是外部變量