C++阶段01笔记02【数据类型(整型、sizeof关键字、实型(浮点型)、字符型、转义字符、字符串型、布尔类型 bool、数据的输入)】
C++| 匠心之作 從0到1入門學編程【視頻+課件+筆記+源碼】
目錄
2 數據類型
2.1 整型
2.2 sizeof關鍵字
2.3 實型(浮點型)
2.4 字符型
2.5 轉義字符
2.6 字符串型
2.7 布爾類型 bool
2.8 數據的輸入
2 數據類型
C++規定在創建一個變量或者常量時,必須要指定出相應的數據類型,否則無法給變量分配內存。
2.1 整型
作用:整型變量表示的是整數類型的數據。
C++中能夠表示整型的類型有以下幾種方式,區別在于所占內存空間不同:
| short(短整型) | 2字節 | (-2^15 ~ 2^15-1) |
| int(整型) | 4字節 | (-2^31 ~ 2^31-1) |
| long(長整形) | Windows為4字節,Linux為4字節(32位),8字節(64位) | (-2^31 ~ 2^31-1) |
| long long(長長整形) | 8字節 | (-2^63 ~ 2^63-1) |
?
#include<iostream> using namespace std;int main() {//整型//1、短整型 2^15==32768(-32768~32767)short num1 = 32768;//2、整型int num2 = 32768;//3、長整型long num3 = 10;//4、長長整型long long num4 = 10;cout << "num1 = " << num1 << endl;cout << "num2 = " << num2 << endl;cout << "num3 = " << num3 << endl;cout << "num4 = " << num4 << endl;system("pause");return 0; }2.2 sizeof關鍵字
作用:利用sizeof關鍵字可以統計數據類型所占內存大小。
語法: sizeof( 數據類型 / 變量)
示例:
#include <iostream> using namespace std;int main() {//整型:short(2字節)int(4字節)long(4字節)long long(8字節)//可以利用sizeof關鍵字求出數據類型占用內存大小//語法:sizeof(數據類型 / 變量)short num1 = 10;cout << "short類型占用內存空間為:" << sizeof(short) << endl;cout << "short類型占用內存空間為:" << sizeof(num1) << endl;cout << "short 類型所占內存空間為:" << sizeof(short) << endl;cout << "int 類型所占內存空間為:" << sizeof(int) << endl;cout << "long 類型所占內存空間為:" << sizeof(long) << endl;cout << "long long 類型所占內存空間為:" << sizeof(long long) << endl;system("pause");return 0; }整型結論:short < int <= long <= long long
2.3 實型(浮點型)
作用:用于表示小數。
浮點型變量分為兩種:
單精度 float
雙精度 double
兩者的區別在于表示的有效數字范圍不同。
| float | 4字節 | 7位有效數字 |
| double | 8字節 | 15~16位有效數字 |
編譯器默認把一個小數當作雙精度數據!數據后面不加“f”,編譯器會自動做一個轉換,將雙精度轉換為單精度!多做一個轉換!
通常會在float數據類型后面加一個“f”,告訴編譯器這是一個float類型的數據。
示例:
#include <iostream> using namespace std;int main() {float f1 = 3.1415926f; //1、單精度 floatdouble d1 = 3.1415926; //2、雙精度 double//默認情況下,輸出一個小數,會顯示出6位有效數字cout << f1 << endl; //小數,最多6位有效數字cout << d1 << endl;//統計float和double占用內存空間cout << "float占用內存空間為:" << sizeof(float) << endl; ? //4字節cout << "double占用內存空間為:" << sizeof(double) << endl; //8字節cout << "float ?sizeof = " << sizeof(f1) << endl;cout << "double sizeof = " << sizeof(d1) << endl;//科學計數法float f2 = 3e2; // 3 * 10 ^ 2cout << "f2 = " << f2 << endl;float f3 = 3e-2; // 3 * 0.1 ^ 2cout << "f3 = " << f3 << endl;system("pause");return 0; }2.4 字符型
作用:字符型變量用于顯示單個字符。
語法:char ch = 'a';
注意1:在顯示字符型變量時,用單引號將字符括起來,不要用雙引號。
注意2:單引號內只能有一個字符,不可以是字符串。
-
C和C++中字符型變量只占用1個字節。
-
字符型變量并不是把字符本身放到內存中存儲,而是將對應的ASCII編碼放入到存儲單元。
示例:
#include <iostream> using namespace std;int main() {//1、字符型變量創建方式char ch = 'a';cout << ch << endl; //a//2、字符型變量所占內存大小cout << "char字符型變量所占內存:" << sizeof(char) << endl; //1//3、字符型變量常見錯誤//ch = "abcde"; //錯誤,不可以用雙引號//ch = 'abcde'; //錯誤,單引號內只能引用一個字符//4、字符型變量對應的ASCII編碼 a-97;A-65cout << (int)ch << endl; //查看字符a對應的ASCII碼 (int)ch:將字符型強轉為整型 97ch = 97; //可以直接用ASCII給字符型變量賦值cout << ch << endl; //asystem("pause");return 0; }ASCII碼 表格:
| 0 | NUT | 32 | (space) | 64 | @ | 96 | 、 |
| 1 | SOH | 33 | ! | 65 | A | 97 | a |
| 2 | STX | 34 | " | 66 | B | 98 | b |
| 3 | ETX | 35 | # | 67 | C | 99 | c |
| 4 | EOT | 36 | $ | 68 | D | 100 | d |
| 5 | ENQ | 37 | % | 69 | E | 101 | e |
| 6 | ACK | 38 | & | 70 | F | 102 | f |
| 7 | BEL | 39 | , | 71 | G | 103 | g |
| 8 | BS | 40 | ( | 72 | H | 104 | h |
| 9 | HT | 41 | ) | 73 | I | 105 | i |
| 10 | LF | 42 | * | 74 | J | 106 | j |
| 11 | VT | 43 | + | 75 | K | 107 | k |
| 12 | FF | 44 | , | 76 | L | 108 | l |
| 13 | CR | 45 | - | 77 | M | 109 | m |
| 14 | SO | 46 | . | 78 | N | 110 | n |
| 15 | SI | 47 | / | 79 | O | 111 | o |
| 16 | DLE | 48 | 0 | 80 | P | 112 | p |
| 17 | DCI | 49 | 1 | 81 | Q | 113 | q |
| 18 | DC2 | 50 | 2 | 82 | R | 114 | r |
| 19 | DC3 | 51 | 3 | 83 | S | 115 | s |
| 20 | DC4 | 52 | 4 | 84 | T | 116 | t |
| 21 | NAK | 53 | 5 | 85 | U | 117 | u |
| 22 | SYN | 54 | 6 | 86 | V | 118 | v |
| 23 | TB | 55 | 7 | 87 | W | 119 | w |
| 24 | CAN | 56 | 8 | 88 | X | 120 | x |
| 25 | EM | 57 | 9 | 89 | Y | 121 | y |
| 26 | SUB | 58 | : | 90 | Z | 122 | z |
| 27 | ESC | 59 | ; | 91 | [ | 123 | { |
| 28 | FS | 60 | < | 92 | / | 124 | | |
| 29 | GS | 61 | = | 93 | ] | 125 | } |
| 30 | RS | 62 | > | 94 | ^ | 126 | ` |
| 31 | US | 63 | ? | 95 | _ | 127 | DEL |
ASCII 碼大致由以下兩部分組成:
-
ASCII 非打印控制字符:ASCII 表上的數字 0-31 分配給了控制字符,用于控制像打印機等一些外圍設備。
-
ASCII 打印字符:數字 32-126 分配給了能在鍵盤上找到的字符,當查看或打印文檔時就會出現。
2.5 轉義字符
作用:用于表示一些不能顯示出來的ASCII字符。
現階段我們常用的轉義字符有:\n、\\、\t。
| \a | 警報 | 007 |
| \b | 退格(BS) ,將當前位置移到前一列 | 008 |
| \f | 換頁(FF),將當前位置移到下頁開頭 | 012 |
| \n | 換行(LF) ,將當前位置移到下一行開頭 | 010 |
| \r | 回車(CR) ,將當前位置移到本行開頭 | 013 |
| \t | 水平制表(HT) (跳到下一個TAB位置) | 009 |
| \v | 垂直制表(VT) | 011 |
| \\ | 代表一個反斜線字符"" | 092 |
| ' | 代表一個單引號(撇號)字符 | 039 |
| " | 代表一個雙引號字符 | 034 |
| \? | 代表一個問號 | 063 |
| \0 | 數字0 | 000 |
| \ddd | 8進制轉義字符,d范圍0~7 | 3位8進制 |
| \xhh | 16進制轉義字符,h范圍09,af,A~F | 3位16進制 |
示例:
#include <iostream> using namespace std;int main() {cout << "\\" << endl; //第一個“\”告訴編譯器,使用者要輸出一個特殊符號!cout << "\tHello" << endl;cout << "\n"<< endl;//換行符“\n”cout << "hello world~\n";//反斜杠“\\”cout << "\\" << endl;//水平制表符“\t”,作用:可以整齊地輸出數據cout << "aaaa\thello world!" << endl; //“\t”占用8個空格,空格有多長取決于a占用多少字符cout << "aa\thello world!" << endl;//“aaa”占用3個空格,“aaaa”占用4個空格cout << "aaaaa\thello world!" << endl;//水平制表符作用:輸出時候的對其效果cout << "aaaa hello world!" << endl;cout << "aa hello world!" << endl;cout << "aaaaa hello world!" << endl;system("pause");return 0; }2.6 字符串型
作用:用于表示一串字符。
兩種風格
示例:
#include <iostream> #include <string> // 用C++風格字符串時,要包含這個頭文件 using namespace std;int main() {//1.C風格字符串:char 變量名[] = "字符串值";//注意事項1:char 字符串名 []//注意事項2:等號后面,要用雙引號包裹字符串char str1[] = "hello world!";cout << str1 << endl; //hello world!//2.C++風格字符串:string 變量名 = "字符串值";//注意事項1:包含一個頭文件#include <string>string str2 = "hello world!";cout << str2 << endl; //hello world!return 0; }2.7 布爾類型 bool
作用:布爾數據類型代表真或假的值。
bool類型只有兩個值:
true --- 真(本質是1)
false --- 假(本質是0)
bool類型占1個字節大小。
示例:
#include <iostream> using namespace std;int main() {//1、創建bool數據類型bool flag = true; //true代表真cout << flag << endl; // 1flag = false; //false代表假cout << flag << endl; // 0//bool本質上,1代表真、0代表假//2、查看bool數據類型所占內存空間cout << "bool類型所占內存空間:" << sizeof(bool) << endl; //1cout << "size of bool = " << sizeof(bool) << endl; //1system("pause");return 0; }2.8 數據的輸入
作用:用于從鍵盤獲取數據。
關鍵字:cin
語法: cin >> 變量
示例:
#include <iostream> #include <string> //string頭文件 using namespace std;int main() {//1、整型 輸入int a = 0;cout << "請給整型變量a賦值:" << endl; //請輸入整型變量cin >> a;cout << "整型變量a = " << a << endl;//2、浮點型 輸入double d = 0;cout << "請給浮點型變量d賦值:" << endl; //請輸入浮點型變量cin >> d; // “>>”右移運算符cout << "浮點型變量d = " << d << endl;float f = 3.14f;cout << "請給浮點型變量f賦值:" << endl; //請輸入浮點型變量cin >> f;cout << "浮點型變量f = " << f << endl;//3、字符型 輸入char ch = 0;cout << "請給字符型變量ch賦值:" << endl; //請輸入字符型變量cin >> ch;cout << "字符型變量ch = " << ch << endl;//4、字符串型 輸入string str;cout << "請給字符串型變量str賦值:" << endl; //請輸入字符串型變量cin >> str;cout << "字符串型變量str = " << str << endl;//5、布爾類型 輸入bool flag = true;cout << "請給布爾型變量flag賦值:" << endl; //請輸入布爾型變量cin >> flag; //bool類型:只要是非0的值,都代表真cout << "布爾型變量flag = " << flag << endl;return EXIT_SUCCESS; }加油~
總結
以上是生活随笔為你收集整理的C++阶段01笔记02【数据类型(整型、sizeof关键字、实型(浮点型)、字符型、转义字符、字符串型、布尔类型 bool、数据的输入)】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2021年 第12届 蓝桥杯 第3次模拟
- 下一篇: C++阶段01笔记03【运算符(算术运算