c++入門教程(三)

上一節講到了不能改變的  “常量”,但是,有些時候我們更需要相對靈活的,可以隨着條件改變的東西,於是,就有了一種叫變量的東西。

首先說明一點,程序運行的時候,無論是常量還是變量,甚至於程序的代碼(當然,不是我們寫出來的這些)都是在內存中的ps:這句話暫時能記住多少就記住多少吧


既然一個量是可以變化的,那麼它肯定不能使一個確定的實體 ,一個不錯的想法是  一個變量是一塊空間,然後這個變量代表的是這個空間裏面的東西。這樣子變量就可以 “變化”起來了。就像學校門口的保安室,我進去的時候那塊空間裏的東西就是我(不要糾結我是不是東西的問題),李雷進去的時候那塊空間裏的東西就是李雷,一條狗進去了的話那塊空間裏的東西就是一條狗    所以,那塊空間一直都叫“那塊空間”,只不過裏面的具體內容是可以變化的。這就是變量的大意。下面我們來看一個例子

void main(){
	int a;
	a = 3;
}

首先還是第一節的那段最簡單的代碼,然後這裏加了兩行。

日常敲黑板  : 這兩行也都是用分號結尾的,就像人說完一句話要有個句號表示一句話說完了,程序裏面也需要這麼表示一下,只不過這裏用的是分號(當然,程序裏不時所有的地方都要用分號結尾的)。

首先來看添加的第一行的a,這個a就是這個變量的名字,也就相當於上文中的“那塊空間”。

但是一塊空間只有名字也是不夠的,因爲無法確定它的大小,以及它裏面通常會放些什麼,於是,在空間名前面加了一個用來確定這塊叫a的空間通常放的東西的類型的  int,int 代表 整數類型,所以   int a;代表   我現在有一塊空間,這塊空間叫做a,這塊空間通常會放int(整數類型,比如1,2,3    帶小數點的比如1.1不行)類型的數據。上面我們提到了  變量是在內存裏面對,所以 int a;的意思是  聲明(就是告訴程序    有我這麼個東西了)一個叫a的變量,這個變量是int(整數類型)型的,所以裏面通常放的是整數。而這句話實際做的事情是  找計算機從內存中要了一塊空間,然後把這塊空間叫做a(這塊空間的位置不確定,大小根據前面的類型來,不同的類型要到的空間的大小也不同)。

所以 聲明一個變量的語法是    變量類型  變量名;

既然已經有了一個變量了,那麼就可以讓這個變量變起來了。於是 就有了下一句  a = 3;

其中  a  是剛剛那個變量(也就是那塊空間的名字) 代表着那塊空間中的內容         ‘='號   不是等於的意思,它的作用是把後面的值放到前面那個變量代表的空間中 所以,a=3;結束之後空間a  的內容就是3 了(當然,也可以把一個變量代表的值放到另一個變量裏 比如)

void main(){
	int a;
	a = 3;
	int b;
	b = a;
}
這裏就把a代表的值給了b  當然  a的值是不變的 也還是3 

上面的例子變量類型是整數類型(int) 還有一些其它的變量類型   比如:

字符類型  char(一個英文字母或數字或符號 並用單引號包起來)  例:’a'

浮點數類型 float(帶小數點的數字)例:3.14

雙精度浮點型 double (比float表示的精度大小和精度更高一點的帶小數點的數字) 例 3.1415926

字符串類型 string(一串字,可以由中文或其它的組成,不侷限於字符,但是要用雙引號包住) 例:“止水” ps:如果用cout輸出字符串變量,需要在開頭加上#include <string>

具體用法同上面的整數類型(int)的例子

當然,一種類型的空間確定了,那麼,它的大小也就同時被確定了。上面提到的int,一般表示-2147483648~+2147483647之間的數字(當然不同編譯器以及不同系統的範圍可能不太一樣) ,如果想表示的值超過了這個範圍 那麼得到的值可能也是錯誤的。類似的  double  float 等也都有固定的空間大小(以後會提到)


順路講點其它東西

鍵盤輸入 :和輸出到控制檯的類似,只是需要把cout變成cin 並且把<<的方向改變一下

例如

#include <iostream>
#include <string>
using namespace std;

void main(){
	string a;
	int b;
	cin>>a>>b;
	cout<<a<<endl<<b<<endl;

}


cin就是把用戶鍵盤的輸入放到程序的 某個變量裏(因爲用戶輸入的內容總還是要找到的,如果不輸入到變量裏  那之後誰也不知道輸入的東西在哪裏了。所以在輸入前要先向電腦要幾塊空間(聲明幾個變量)用來存放輸入的數據。)具體用法cin>>變量1>>變量2>>.....>>變量n;這裏要注意一點,用戶鍵盤輸入的數據之間用空格或回車分隔  而且輸入的數據要和程序中用於接收的數據對應。比如上面的程序裏cin後面的第一個參數的類型是 string  所以輸入的第一個值是 "止水"第二個是一個整型(int)的,所以第二個值應該是個整數。

上面例子運行結果如下

注意:

正常的話運行這段程序,黑框框出來之後裏面是沒有字的。然後 用鍵盤輸入第一行的各個變量的值(第一行是用鍵盤輸入的,然後中間紅色框框的地方是個空格)


有時間可以試試  輸入一個名字,一個地名,一個月份,一個日期  然後 在控制檯上輸出   aa來自bb生日是c月d日

例:止水來自遼寧生日是6月20日


發佈了34 篇原創文章 · 獲贊 17 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章