C++入門知識3
大家好,我是Michael_cmr(一位蒟蒻)
這次給大家講解如何定義變量,變量是所有的編程中最重要的模塊,不管什麼都離不開變量。好了
首先,讓我們先來理解一下,什麼是變量——
從字面意義上來看,變量就是會變的量 這不都是廢話 。具體要變成什麼值,要看正在閱讀這篇blog的讀者們自己來看咯~~~
乾貨時間:
1.C++有什麼基本的變量:
好,直接列表
數據類型 標識符 取值範圍
整形 int -2147483684~2147483684
單精度浮點數 float -3.4E+38~3.4E+38(7位有效數字)
雙精度浮點數 double -1.79E+308~1.79E+308(15位有效數字)
字符型 char -128~127
布爾型 bool 0或1
無返回值 void 啥都沒有(主要是聲明函數無返回值或無類型指針)
注:7位有效數字表示小數點後可保留七位小數,以此類推。
嗯嗯,看上去是不是很少哦?
嘻嘻,騙你的,還有許多呢。慢慢往下看
2.C++的基本類型修飾詞
很好,謝謝你們很有耐心的看到了這裏。修飾詞嘛,就是拿來修飾變量的。
我們常見的修飾詞有:
short 短整型,修飾int(修飾時可省略int)
long 長整形,修飾int(修飾時可省略int)和double(不可省略double)
signed 修飾整形,有符號類型
unsigned 修飾整形,無符號類型
讓我們來一一解釋一下這些修飾詞——首先,大家看到有符號類型和無符號類型可能會懵逼
o((⊙﹏⊙))o yi?你在講什麼我不知道
首先,有符號類型(幾乎所有的變量類型都有符號,char有點特殊)。而無符號類型,就是說沒有了負號吧(簡單的可以這麼理解)。
3.定義變量的規則
定義變量的規則很簡單,就幾句話解決,那就是——————
定義變量先寫變量類型(以後會知道這個叫做關鍵字),然後一個空格+變量名。
變量名規則:
數字不當開頭,不能出現中文,字符下劃線允許使用。
舉個例子啊:
我們定義了一個整形變量
int 1a
認真看一下,變量名的開頭是1,所以是錯的,不能用!
但是,如果我們寫爲
int a1
這個變量名滿足了條件,所以成立
下劃線就是
_
認真看看,是不是看到了上一行有一個短短的橫線,這個就是下劃線
變量名對下劃線的位置很隨意,你放哪裏都行
變量在我們真正的編程中,還要注意內存佔用(用sizeof來查看),接下來上代碼來總結
#include<iostream>
using namespace std;
int main()
{
int a=1; //聲明瞭int類型的變量a
cout<<"變量a值爲"<<a<<" 佔用的內存爲"<<sizeof(a)<<endl;
a=100; //賦值操作
cout<<"變量a值爲"<<a<<" 佔用的內存爲"<<sizeof(a)<<endl;
system("pause");
return 0;
}
運行結果爲:
由此可以看出,int類型佔用4個字節。
接着來看
#include<iostream>
using namespace std;
int main()
{
short int a_1=0; //聲明瞭短整型變量
short a_2=20; //同上一句註釋
cout<<"變量a_1值爲"<<a_1<<" 佔用的內存爲"<<sizeof(a_1)<<endl
<<"變量a_2值爲"<<a_2<<" 佔用的內存爲"<<sizeof(a_2)<<endl;
a_1=100;
a_2=100;
cout<<"變量a_1值爲"<<a_1<<" 佔用的內存爲"<<sizeof(a_1)<<endl
<<"變量a_2值爲"<<a_2<<" 佔用的內存爲"<<sizeof(a_2)<<endl;
system("pause");
return 0;
}
運行結果:
這說明了短整型short int 跟short是一樣的,佔用的內存是2個字節。
再往下(這次我們寫的代碼長一點)
#include<iostream>
using namespace std;
int main()
{
/*======長整型變量======*/
long long int q=5000000; //取值範圍是-2^63~2^63-1
long long q_1=1000000000;
cout<<"q的值爲"<<q<<" 所佔字節爲"<<sizeof(q)<<endl
<<"q_1的值爲"<<q_1<<" 所佔字節爲"<<sizeof(q_1)<<endl;
/*======無符號長整型變量======*/
unsigned long long L=0; //取值範圍是0~2^64-1
cout<<"l的值爲"<<L<<" 所佔字節爲"<<sizeof(L)<<endl;
system("pause");
return 0;
}
運行結果:
所以,不難看出——long long int 跟long long 是一樣的,取值範圍是-2^63 ~2^63-1
然後。無符號型長整型 unsigned long long 的取值範圍是0~2^64-1
…………之後還有好多好多,接下來直接寫一個被修飾後的表格集合一下
數據類型 標識符 取值範圍
無符號短整形 unsigned short 0~65535
無符號整形 unsigned int 0~4294967295
無符號短整形 unsigned long long 0~2^64-1
高精度浮點數 long double 3.4E-4932~1.1E+4932(19爲有效數字)
字符型 signed char 0~255
它們所佔的空間分別是:
數據類型 標識符 所佔空間(字節)
無符號短整形 unsigned short 2
無符號整形 unsigned int 4
無符號短整形 unsigned long long 8
高精度浮點數 long double 12
字符型 signed char 1
差不多就是這些,在C++(兼容C語言)裏面,還有一些複雜的數據類型,比如struct(自定義數據類型),enum(枚舉)………………好多好多,我們後面會慢慢學到。
請期待下一節——如何使用變量(賦值與類型轉換)
如有出錯,多多包涵(如能指出,感激不盡)!謝謝大家!歡迎各位大神指點!
(轉載請標註出處與樓主姓名)
(QQ:2437844684)
(歡迎各位大神評論)