中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言中全局變量與局部變量的示例分析

發布時間:2022-03-04 11:37:47 來源:億速云 閱讀:214 作者:小新 欄目:開發技術

小編給大家分享一下C語言中全局變量與局部變量的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

一:局部變量與全局變量

1.1:局部變量

局部變量:在函數內部定義的變量 ,auto可加可不加
作用域:從定義到本函數結束
生命周期:從定義到該函數結束

1.2:全局變量

全局變量:在函數外部定義的變量、所以存在數據區
作用域:項目中所有文件 。

注意:在其他文件中使用需要聲明,且不可重名extern int a,extern是關鍵字,專用來聲明外部符號。

生命周期:程序開始創建到程序結束銷毀。

1.3:代碼解釋

C語言中全局變量與局部變量的示例分析

注:當局部變量與全局變量同名時,局部變量優先使用。

1.4:const修飾的變量的修改

全局變量
直接修改 失敗
間接修改 失敗 原因放在常量區,受到保護。
局部變量
直接修改 失敗
間接修改 成功 原因放在棧上 局部變量存在棧區。
詳情見我的C語言指針基礎篇

二:靜態局部變量與靜態全局變量

2.1:static關鍵字

static :
修飾局部變量:其實是改變了局部變量的存儲類型,(從棧區到靜態區)。從而使得靜態的局部變量除出了作用域也不會銷毀。對于局部變量 其實有一個“保值”的作用。
修飾全局變量:一個全局變量在整個工程的其他文件內部都可以使用,是因為全局變量有外部鏈接屬性,當static修飾時,外部鏈接屬性就變成了內部鏈接屬性,使這個全局變量只能在自己的源文件內部使用,其他文件不可使用。

2.2:靜態局部變量

靜態局部變量:在函數內部定義的變量,使用static修飾,保存一個值在靜態區(保值)。
作用域:當前函數中。
生命周期:程序開始創建到程序結束銷毀

靜態局部變量只會初始化一次 可以多次賦值
在數據區進行存儲(靜態區)

2.3:靜態全局變量

靜態全局變量:在函數外部定義的變量,使用static修飾,可以在本文件中使用,不可再同一項目的其它文件中使用。
作用域:當前文件中。
生命周期:程序開始創建到程序結束銷毀。

注:全局變量、靜態局部變量、靜態全局變量如果未初始化系統會默認初始化值為0。但是局部變量需要初始化。

2.4:匯總

C語言中全局變量與局部變量的示例分析

三:全局函數與靜態函數

3.1:全局函數

全局函數:沒有任何修飾的函數。
作用域:項目中所有文件(其他文件使用時也需要聲明)。
生命周期:程序開始創建到程序結束銷毀。

3.2:靜態函數

靜態函數:使用static修飾的函數。
作用域:當前文件中。
生命周期:程序開始創建到程序結束。
注:靜態函數可以和全局函數重名 ,也服從就近原則。

3.3:匯總表

C語言中全局變量與局部變量的示例分析

以上是“C語言中全局變量與局部變量的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

连城县| 开封市| 镇原县| 萨嘎县| 平安县| 察雅县| 理塘县| 泰顺县| 文水县| 若尔盖县| 岱山县| 柳林县| 兴海县| 民县| 荔浦县| 广宗县| 长岛县| 遵义县| 友谊县| 文成县| 淄博市| 湘乡市| 临桂县| 芦山县| 延川县| 吉木萨尔县| 东乌珠穆沁旗| 斗六市| 姚安县| 广宁县| 邓州市| 明水县| 巴林左旗| 多伦县| 布尔津县| 和政县| 齐河县| 隆化县| 双流县| 隆化县| 炎陵县|