C++數據類型

目錄

 

1.數據類型概述

2.基本的內置類型

整型

實型(浮點型)

字符型

轉義字符

字符串型

c風格的字符串

c++風格的字符串

布爾類型bool


1.數據類型概述

使用編程語言進行編程時,需要用到各種變量來存儲各種信息。變量保留的是它所存儲的值的內存位置。這意味着,當創建一個變量時,就會在內存中保留一些空間。計算機是怎麼知道這個內存空間應該開多大?因爲可能存儲各種數據類型(比如字符型、寬字符型、整型、浮點型、雙浮點型、布爾型等)的信息,只有當明確指出當前變量或者常量的數據類型,操作系統會根據數據類型來分配內存和決定內存空間大小。

2.基本的內置類型

C++ 爲程序員提供了種類豐富的內置數據類型和用戶自定義的數據類型

整型

short2個字節

int 4字節

long 4字節(windos中4個字節Liunx的64位是8個字節)

long long 8字節

可以通過sizeof(數據類型或者變量)函數查看數據類型或者變量字節大小

#include <iostream>
using namespace std;

int main() {
	cout <<"short大小" << +sizeof(short)<<endl;
	cout <<"int大小" << + sizeof(int) << endl;
	cout <<"long大小" << + sizeof(long) << endl;
	cout <<"long long大小" << + sizeof(long long) << endl;
	return 0;
}

實型(浮點型)

用來描述小數,有單精度float(4字節)和double雙精度(8字節)兩種,區別在於兩者精確範圍不同

程序中如何定義

對於單精度如下,定義一個單精度數a=3.14,默認小數是double的,當我們使用float接收的時候會轉成float,

所以最好定義的時候,在後面加個f,直接聲明就是單精度數

但是在c++中默認,小數最多隻能輸出6位有效數字,(可以通過配置輸出更多)

int main() {
	float a = 3.1415926f;
	double b = 3.1415926;
	cout << a;//輸出3.14159
	cout << b;//輸出3.14159
	return 0;
}

字符型

字符型變量用於存儲單個字符,定義格式 char a='b';

注意:

1.顯示字符型變量只能是單引號,不能是雙引號

2.單引號裏面只能有一個字符,不能有多個

3.c/c++中字符佔一個字節

4.字符型變量只是將對應的ASCll編碼放在內存中,並不是字符本身,可以通過下面程序知道

int main() {
	char a = 'c';
	cout << (int)a;//輸出99
	return 0;
}

轉義字符

表示一些不能顯示的ASCll字符

轉義字符

意義

ASCII碼值(十進制)

\a

響鈴(BEL)

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

空字符(NULL)

000

\ddd

1到3位八進制數所代表的任意字符

三位八進制

\xhh

1到2位十六進制所代表的任意字符

二位十六進制

 

字符串型

用於表示一串字符,c++有以下兩種用來表示字符串

c風格的字符串

#include <iostream>
using namespace std;

int main() {
	char a[] = "hell word";//格式 char 字符串名[]="字符串";
	cout << a;//hell word
	return 0;
}

c++風格的字符串

C++ 標準庫提供了 string 類類型

#include <iostream>
#include <string>//c++字符串需要加上這個頭文件
using namespace std;

int main() {
	string a = "hell word";//格式string a="字符串"
	cout << a;
	return 0;
}

布爾類型bool

bool用來表示真或假,佔用內存空間爲1字節,取值只有false和true

false表示假,本質是0

true表示真,本質是1(默認非0值都代表1)


int main() {
	bool flag = true;
	cout << flag;//1
	flag = false;
	cout << flag;//0
	return 0;
}

                      

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章