在函式中定義的符號型別:
1.由模組m定義並能被其他模組引用的全域性符號,如非靜態的c函式和被定義為不帶c static屬性的全域性變數
2.由其他模組定義並被模組m應用的全域性符號,也稱為外部符號,如定義在其他模組的c函式和變數
3.只被模組m定義與使用的本地符號,還有宣告帶有static屬性的c函式和全域性變數(模組私有)
由以上圖和符號型別區別變數:
1.全域性變數和區域性變數的區別?
全域性變數在儲存器的.data節(已初始化)或.bss(未初始化)節中,區域性變數在程式執行時儲存在使用者棧中。
2.全域性變數與宣告帶static屬性的全域性變數?
全域性變數可被其他模組引用,而宣告帶有static屬性的c函式和全域性變數是模組私有的,不能被其他模組所應用。
3.區域性變數與宣告帶static屬性的區域性變數?
區域性變數在棧中管理,而帶static屬性的區域性變數不在棧中管理,在.data和.bss中定義分配空間
變數與指標變數的區別
1 變數名 例如 int a 10 i j 10 2 位址 顧名思義它表示的是乙個變數的位址,就好比你的名字是個變數,我可以通過名字來追蹤到你,但我也可以 通過你家的位址去找到你,對余c語言的位址也是一樣的,還有就是我們要知道 指標 位址。include include int main int p...
各種變數的區別
這個網頁相當好,還解釋了棧和堆的區別!對於乙個完整的程式,在記憶體中的分布情況如下圖 區全域性資料區 堆區棧區 變數可以分為全域性變數 靜態全域性變數 靜態區域性變數和區域性變數 按儲存區域分 全域性變數 靜態全域性變數和靜態區域性變數都存放在記憶體的全域性資料區,區域性變數存放在記憶體的棧區 按作...
和 變數的區別
最初,星號變數是用在函式的引數傳遞上的,在下面的例項中,單個星號代表這個位置接收任意多個非關鍵字引數,在函式的 b位置上將其轉化成元組,而雙星號代表這個位置接收任意多個關鍵字引數,在 b位置上將其轉化成字典 該位置接受任意多個非關鍵字 non keyword 引數,在函式中將其轉化為元組 1,2,3...