C++ 學習筆記 —— 資料型別
C++規定在建立變數或者常量時,必須要指定出相應的資料型別,否則無法給變數分配記憶體
1.整型
作用:
整型變量表示的是整數型別的資料
資料型別 佔用空間 取值範圍
short(短整型) 2位元組 (-2^15--2^15-1)
int((整型) 4位元組 (-2^31--2^31-1)
long(長整型) win: 4位元組 (-2^31--2^31-1)
long long (長整型) 8位元組 (-2^63--2^63-1)
2.sizeof 關鍵字
作用:利用sizeof關鍵字可以統計資料型別所佔記憶體大小
語法:sizeof (資料型別 或 變數)
eg:
#include <iostream>
using namespace std;
int main()
{
cout << "sizeof關鍵字練習:" << endl;
//1.short 2byte 2.int 4byte 3.long 4byte 4.long long 8byte
short snum = 10;
cout <<"短整型 short所佔記憶體大小為:" << sizeof(snum) <<"個位元組"<< endl;
int inum = 10;
cout << "整型 int所佔記憶體大小為:"<< sizeof(inum) << " 個位元組" << endl;
long lnum = 10;
cout << "長整型 long所佔記憶體大小為:" << sizeof(lnum) << "個位元組"<< endl;
long long llnum = 10;
cout << "長長整型 long long 所佔記憶體大小為:"<< sizeof(llnum) <<"個位元組"<< endl;
system("pause");
return 0;
}
3.實型(浮點型)
作用:
用於表示小數(浮點型)
浮點型變數分為兩種:
單精度float 雙精度double 兩者間的區別在於表示的有效數字範圍不同。
資料型別 佔用空間 有效數值範圍
float 4byte 7為有效數字
double 8byte 15~16位有效數字
eg:
#include <iostream>
using namespace std;
int main()
{
cout <<"浮點型練習:"<< endl;
//1.float //2.double
//預設輸出會顯示6位有效數字
float fnum = 3.144444444444f; cout << "浮點型 fnum = " << fnum << endl;
double dnum = 13.1444444444;
cout << "浮點型 dnum ="<< dnum << endl;
cout <<"浮點型 float 所佔記憶體空間為:" << sizeof(float) <<"個位元組" << endl;
cout << "浮點型 double 所佔記憶體空間為:"<< sizeof(double) <<"個位元組"<< endl;
//科學計數法表示小數
float fnum1 = 3e2; //e表示10的 2次方
float fnum2 = 3e-2; //e表示0.1的2次方
cout << fnum1 << endl; cout << fnum2 << endl;
system("pause");
return 0;
}
4.字元型
作用:
字元型變數用於顯示單個字元 語法:
char ch ="a";
注意
1:
在顯示字元型變數時,用單引號將字元括起來,不要用雙引號 注意
2:
單引號內只能有一個字元,不可以是字串 C和C++中字元型變數只能佔用1個位元組 字元型變數殯改不是把字元本身放到記憶體中去儲存,而是將對應的ASCLL編碼放入到儲存單元
eg:
#include <iostream>
using namespace std;
int main()
{
cout << "字元型練習:"<< endl;
//1.字元型變數的建立方式
char ch = "a";
cout << ch<<endl;
//2.字元型變數所佔記憶體大小
cout << "ch所佔記憶體大小為:"<< sizeof(ch) <<"個位元組"<< endl;
//3.字元型變數常見錯誤
//char ch2 = "a"; //只能是單引號,否則報錯
//char ch2 ="adfa"; //只能由一個字元否則報錯
//4.字元型變數對應ASSCII編碼
cout << (int)ch<<endl;
system("pause");
return 0;
}
5.轉義字元
作用:
用於表示一些不能顯示出來的ASCII字元
現階段我們常用的轉義字元有:\n \\ \t
eg:
#include <iostream>
using namespace std;
int main()
{
cout << "轉義字元練習:"<< endl;
//轉義字元
//1.換行符 \n
cout <<"hello word \n";
//2.反斜槓 cout << "\\" << endl;
//3.製表符 /t 作用可以整齊輸出資料
cout << "製表符 / t 作用可以整齊輸出資料" << endl;
cout << "dfsdf\tsdfsdfsdf"<< endl;
cout << "dfsdf\tsdfsdfsdf" << endl;
cout << "dfsdf\tsdfsdfsdf"<< endl;
system("pause");
return 0;
}
6.字串型
作用:
用於表示一串字元 兩種風格:
C風格字串:char變數名[] = "字串值"
C++風格字串:string 變數名 = “字串”;
eg:
#include <iostream>
#include <string> //c++中使用字串時,需要新增此標頭檔案
using namespace std;
int main()
{
cout << "字串練習:" << endl;
//1.C風格字串
// 注意事項 char 字串名 []
// 注意事項2 等號後面 要用雙引號 包含起來字串
char ccahr[] = "hello word!";
cout << ccahr << endl;
//2.C++風格字串
string scahr ="你好世界!";
cout << scahr << endl;
system("pause");
return 0;
}
7.布林型別 bool
作用:
布林資料型別代表真或假的值 bool型別只有兩個值:
true ---真 (本質是1) false ---假 (本質是0)
eg:
#include <iostream>
using namespace std;
int main()
{
cout << "布林型別練習:" << endl;
//1.建立布林型別資料
bool bflag = true;
bool bflagg = false;
cout << bflagg<<endl;
cout << bflag << endl;
//2.檢視布林型資料佔用記憶體大小
cout << "bool型資料佔用記憶體大小是" << sizeof(bool)<<"個位元組"<<endl;
system("pause");
return 0;
}
8、資料的輸入
作用:
用於從鍵盤獲取資料 關鍵字:cin
語法:
cin>>變數
eg:
#include <iostream>
#include <string>
using namespace std;
int main()
{
cout << "資料的輸入練習:"<< endl;
//1.整型
int a = 0;
cout << "請給變數a賦值:"<< endl;
cin >> a;
cout << "a = " << a<<endl;
//2.浮點型
float f = 0.0f;
cout <<"請給變數f進行賦值:" << endl;
cin >> f;
cout << "f = "<< f << endl;
//3.字元型
getchar();
char ch ="a";
cout << "請給字元變數ch賦值:"<< endl;
cin >> ch;
cout << "ch=" << ch<<endl;
getchar();
//4.字串型
string s = "初始化";
cout << "請給字串變數s賦值:" << endl;
cin >> s;
cout << "s = " <<s<< endl;
//5.布林型
bool flag = false;
cout << "請給布林型變數flag賦值:" << endl;
cin >> flag;
cout << "flag = "<< flag << endl;
system("pause");
return 0;
}