C++入门之常量与变量
生活随笔
收集整理的這篇文章主要介紹了
C++入门之常量与变量
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C++入門之常量與變量
1 變量
作用:給一段指定的內存空間起名,方便操作這段內存。
語法:數據類型 變量名 = 初始值;
注意:C++在創建變量時,必須給變量一個初始值,否則會報錯
1.1 全局變量
(1)普通局部變量
- 全局變量以 靜態 存儲方式,不在任何 {} 之內
- 該變量是外部鏈接,在所有的 .cpp 文件中(源程序)都可用,只需要聲明下即可
- 可以在多個文件聲明,但是賦值只能在一個文件中(別的文件進行聲明)
(2)static 全局變量
- 全局變量以 靜態 存儲方式,不在任何 {} 之內
- 該變量是內部連接,就是說在其它的 .cpp 文件中該變量是不可見的,也不能用
- 只初使化一次,防止在其他文件單元中被引用
1.2 局部變量
局部變量也稱為內部變量,是在函數內作定義說明的。其作用域僅限于函數內,離開該函數后再使用這種變量是非法的。
1.3 全局變量與局部變量的區別
-
局部變量只在本函數范圍內有效,此外的函數均不能使用;全局變量的有效范圍從定義變量的位置開始到本源程序結束。
-
局部變量是程序執行到本函數式分配內存空間,此函數執行完后釋放空間;全局變量是程序運行時事先分配好內存空間,整個程序執行結束后釋放內存。
-
局部變量存儲在棧空間;全局變量存儲在全局數據區。
-
全局變量如果沒有初始化,系統給他賦值為0;局部變量如果未初始化,系統會給他隨機賦值。全局變量和局部變量重名時,局部變量起作用。
2 常量
作用:用于記錄程序中不可更改的數據
C++定義常量兩種方式:
- 通常在文件上方定義,表示一個常量
- 通常在變量定義前加關鍵字const,修飾該變量為常量,不可修改
3 變量與常量的內存分配
- 局部變量存放在棧區
- 全局變量、靜態變量存放在全局區
- 常量存放在常量區,全局區包含常量區
4 全局區與代碼區
在程序編譯后,生成了 exe 可執行程序,未執行該程序前 內存分為兩個區域:
4.1 代碼區:
- 存放 CPU 執行的機器指令
- 代碼區是 共享 的,共享的目的是對于頻繁被執行的程序,只需要在內存中有一份代碼即可
- 代碼區是 只讀 的,使其只讀的原因是防止程序意外地修改了它的指令
4.2 全局區:
- 全局變量和靜態變量存放在此
- 全局區包含常量區,字符串常量和其他常量存放在此
- 該區域的數據在程序結束后由操作系統釋放
總結
以上是生活随笔為你收集整理的C++入门之常量与变量的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安装 VMware Tools 实现窗口
- 下一篇: C++之 static 关键字