進階C++1.1 變量定義與初始化

我們寫程序的目的是處理數據,簡單到一個班級的成績管理,甚至一個簡單的加法運算。為此,我們需要用到一些用來表示計算對象的一些值,我們通過讀取、修改和寫入這些值實現相應數據的運算。這些值加上運算的控制代碼,就是我們整個程序。如果我們給某些可變的值定義一個名稱,那麼這個名稱就叫變量

在我們在電腦裡,程序和數據平時存儲在硬盤裡,即便我們電腦斷電之後,這些數據仍然存在。但是我們在運算的時候,要把數據拷貝到內存中(計算時還要進一步拷貝到寄存器裡處理)進行處理。

為了創建變量,我們要分配一定的空間以存儲數據,這個過程叫定義變量(不同於申明變量)。為了存儲不同類型的數據,編譯器預先定義好了一些基本數據類型,如char、short,int, long, float等,不同的類型,其分配的存儲空間大小不一樣,用戶根據實際描述對象的需要選擇合適的數據類型。當然,也可以用大類型來存儲小數據,但是在單片機裡存儲空間有限的情況下,就會造成空間浪費。

1 變量定義

<code>int x;//整形,在32位系統裡4字節
char y;//字符型,1字節/<code>

在編譯過程中(compiletime),當編譯器看到這些語句時,就會分配相應大小的空間並給一個名稱。在運行過程中(runtime),就可以把這個名稱當作空間來進行讀寫。

2 變量初始化

變量使用前要進行初始化(Instantiation),這是對C語言類型變量的叫法,當我們對常規的非class類型的變量,比如char、short,int, long等變量第一次賦值時,可以稱為初始化。但是到C++以後,有了類的概念,類變量的定義,我們稱之為實例化(a instance)。

變量可以在定義時初始化,也可以在使用時初始化。

<code>int width=5; //定義時初始化
或者
int width;
...
width = 5; //使用時初始化/<code>

C++對變量的初始化方式豐富了很多。

<code>int width=5; 
int width( 5 );//圓括號
int width{ 5 };//花括號
int width = { 5 };//花括號賦值
int width{};//初始化為0
int width{ 0 };//初始化為0
int a, b( 5 );
int c, d{ 5 };/<code>


分享到:


相關文章: